我正在C++,MFC,Windows下进行编程。
我想将文件夹删除到回收站中。
我怎样才能做到这一点?
CString filePath = directorytoBeDeletePath;
TCHAR ToBuf[MAX_PATH + 10];
TCHAR FromBuf[MAX_PATH + 10];
ZeroMemory(ToBuf, sizeof(ToBuf));
ZeroMemory(FromBuf, sizeof(FromBuf));
lstrcpy(FromBuf, filePath);
SHFILEOPSTRUCT FileOp;
FileOp.hwnd = NULL
FileOp.wFunc=FO_DELETE;
FileOp.pFrom=FromBuf;
FileOp.pTo = NULL;
FileOp.fFlags=FOF_ALLOWUNDO|FOF_NOCONFIRMATION;
FileOp.hNameMappings=NULL;
bRet=SHFileOperation(&FileOp);
上面的代码有什么问题吗?
它总是失败。
我发现了问题:
filePath应该是:“c:\abc”而不是“c:\abc\”
最佳答案
SHFileOperation的返回值是一个int,并且应指定错误代码。你得到了什么?