SHFileOperation的用法

avatar
作者
猴君
阅读量:7

SHFileOperation是一个Windows API函数,用于执行文件操作,例如复制、移动、重命名、删除等。下面是使用SHFileOperation函数的基本用法:

  1. 包含头文件和链接库:
#include <Windows.h> #pragma comment(lib, "shell32.lib") 
  1. 定义SHFILEOPSTRUCT结构体,并设置相关参数:
SHFILEOPSTRUCT fileOp; ZeroMemory(&fileOp, sizeof(fileOp)); fileOp.hwnd = NULL;  // 窗口句柄,可以为空 fileOp.wFunc = FO_COPY;  // 指定操作类型,例如复制、移动、删除等 fileOp.pFrom = sourceFilePath;  // 源文件路径,可以是多个文件或文件夹,用空字符分隔 fileOp.pTo = destinationFilePath;  // 目标文件路径,可以是目录或文件 fileOp.fFlags = FOF_ALLOWUNDO | FOF_NOCONFIRMATION;  // 设置选项,例如允许撤销、不显示确认对话框等 
  1. 调用SHFileOperation函数执行文件操作:
int result = SHFileOperation(&fileOp); if (result == 0) {     // 操作成功 } else {     // 操作失败,可以通过返回值和GetLastError函数获取错误信息     DWORD error = GetLastError(); } 

注意事项:

  • 在使用SHFileOperation函数之前,需要确保操作系统已经初始化。
  • 在使用SHFileOperation函数之后,需要检查返回值来确定操作是否成功。
  • 在设置fileOp.fFlags时,可以使用多个选项,用逻辑或操作符(|)连接。
  • 在设置fileOp.pFrom和fileOp.pTo时,需要使用双空字符(NULL)作为多个文件或文件夹的分隔符。

以上是SHFileOperation函数的基本用法,你可以根据具体需求进行参数的设置和错误处理。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!