SHFILEOPSTRUCT 第一次拷贝时成功 第二次提示无法找到源文件或磁盘,请帮忙解决,该怎么解决
SHFILEOPSTRUCT 第一次拷贝时成功 第二次提示无法找到源文件或磁盘,请帮忙解决
第一次:lpszFromPath=c:/你好.pdf 成功
第二次:lpszFromPath=c:/gh.pdf 失败
文件的长度好像导致问题,只要第二次的文件名长度大于或等于第一次就可以成功.
请帮忙解决
LPCTSTR lpszFromPath
LPCTSTR lpszToPath
SHFILEOPSTRUCT fileop;
fileop.hwnd =this-> m_hWnd ;
fileop.wFunc = FO_MOVE;
fileop.pFrom = lpszFromPath;
fileop.pTo=lpszToPath;
fileop.fFlags=FOF_SILENT|FOF_NOCONFIRMATION;
if(SHFileOperation(&fileop) != 0)
{ // Fail
return false;
}
else
{
return true;
}
------解决方案--------------------
pFrom pTo 以\0\0结束
------解决方案--------------------
要用两个\0结束
第一次:lpszFromPath=c:/你好.pdf 成功
第二次:lpszFromPath=c:/gh.pdf 失败
文件的长度好像导致问题,只要第二次的文件名长度大于或等于第一次就可以成功.
请帮忙解决
LPCTSTR lpszFromPath
LPCTSTR lpszToPath
SHFILEOPSTRUCT fileop;
fileop.hwnd =this-> m_hWnd ;
fileop.wFunc = FO_MOVE;
fileop.pFrom = lpszFromPath;
fileop.pTo=lpszToPath;
fileop.fFlags=FOF_SILENT|FOF_NOCONFIRMATION;
if(SHFileOperation(&fileop) != 0)
{ // Fail
return false;
}
else
{
return true;
}
------解决方案--------------------
pFrom pTo 以\0\0结束
------解决方案--------------------
要用两个\0结束