SHFileOperation
是一個函數,可以用于執(zhí)行文件操作,例如復制,移動,重命名和刪除文件。以下是使用 SHFileOperation
的基本步驟:
windows.h
頭文件,以及在鏈接時將 shell32.lib
添加到項目中。#include <windows.h>
#pragma comment(lib, "shell32.lib")
SHFILEOPSTRUCT
結構體來指定要執(zhí)行的操作。SHFILEOPSTRUCT fileOp;
ZeroMemory(&fileOp, sizeof(SHFILEOPSTRUCT));
fileOp.hwnd = NULL;
fileOp.wFunc = FO_COPY; // 設置操作類型,例如 FO_COPY 復制,F(xiàn)O_MOVE 移動
fileOp.pFrom = sourcePath; // 設置源文件路徑,可以是多個文件或文件夾,以空字符結尾
fileOp.pTo = destinationPath; // 設置目標文件夾路徑,以空字符結尾
fileOp.fFlags = FOF_ALLOWUNDO | FOF_NOCONFIRMATION; // 設置標志,例如 FOF_ALLOWUNDO 允許撤消操作,F(xiàn)OF_NOCONFIRMATION 不顯示確認對話框
SHFileOperation
函數來執(zhí)行操作。int result = SHFileOperation(&fileOp);
if(result == 0) {
// 操作成功
} else {
// 操作失敗
}
注意:SHFileOperation
函數返回 0 表示操作成功,非零值表示操作失敗。