如果拷贝函数的参数都是LPCTSTR类型:
OnCopyFile(LPCTSTR strSrc,LPCTSTR strDet)
{
char  strTitle[]="File copying";
SHFILEOPSTRUCT FileOp;
FileOp.hwnd=this->m_hWnd;
FileOp.wFunc=FO_COPY;
FileOp.pFrom=strSrc;
FileOp.pTo=strDst;
FileOp.fFlags=FOF_ALLOWUNDO;
FileOp.hNameMappings=NULL;
FileOp.lpszProgressTitle=strTitle;
::SHFileOperation(&FileOp);
}
则:LPCTSTR strSrc="c:\\123.exe";
    LPCTSTR strDst="d:\\123.exe";
   OnCopyFile(strSrc,strDst)将被正确执行
但如果将参数变成CString类型,即拷贝函数声明为OnCopyFile(CString strSrc,CString strDst)时,定义CString strSrc="c:\\123.exe"; CString strDst="d:\\123.exe",然后调用OnCopyFile,便会出现如标题所说的错误。为什么?