CFileDialog FileDialog(TRUE,NULL,NULL,NULL,(LPCTSTR)("Text files(*.txt)|*.txt|All files(*.*)|*.*"),this);
if(FileDialog.DoModal())
{
CString szFileName;
CString szFileFolderP;
szFileName = FileDialog.GetFileName();
szFileFolderP = FileDialog.GetFolderPath();//err为什么执行到这一步就出错?
//……
}
if(FileDialog.DoModal())
{
CString szFileName;
CString szFileFolderP;
szFileName = FileDialog.GetFileName();
szFileFolderP = FileDialog.GetFolderPath();//err为什么执行到这一步就出错?
//……
}
因为它 ASSERT(::IsWindow(m_hWnd));
如果你需要得到路径, 不如用GetPathName( ) , 再去掉FileName部分.
这步前设置断点,看看变量FileDialog的值。