MFC中GetFolderPath()如何使用
TCHARszFilter[]=_T("所有文件(*.*)|*.*||");CFileDialogfileDlg(TRUE,_T(".jpg"),NULL,OFN_FIL...
TCHAR szFilter[]=_T("所有文件(*.*)|*.*||");
CFileDialog fileDlg(TRUE, _T(".jpg"), NULL, OFN_FILEMUSTEXIST|OFN_HIDEREADONLY, szFilter , this);
CString m_path;
if(IDOK==fileDlg.DoModal())
{
m_path=fileDlg.GetFolderPath();
SetDlgItemText(IDC_EDIT2, m_path);
}
这是我的那段代码,可以编译通过,也可以找文件,但是找到文件了点打开,就提示
请问应该如何使用呢? 展开
CFileDialog fileDlg(TRUE, _T(".jpg"), NULL, OFN_FILEMUSTEXIST|OFN_HIDEREADONLY, szFilter , this);
CString m_path;
if(IDOK==fileDlg.DoModal())
{
m_path=fileDlg.GetFolderPath();
SetDlgItemText(IDC_EDIT2, m_path);
}
这是我的那段代码,可以编译通过,也可以找文件,但是找到文件了点打开,就提示
请问应该如何使用呢? 展开
2个回答
展开全部
建议你用如下方式打开文件
sprintf_s(path, "%s", dlg.GetPathName());
SetDlgItemText(IDC_EDIT2, m_path);
另:你先确定一下,你是在哪一句弹出这样的错误,是m_path=fileDlg.GetFolderPath();
还是SetDlgItemText(IDC_EDIT2, m_path);
sprintf_s(path, "%s", dlg.GetPathName());
SetDlgItemText(IDC_EDIT2, m_path);
另:你先确定一下,你是在哪一句弹出这样的错误,是m_path=fileDlg.GetFolderPath();
还是SetDlgItemText(IDC_EDIT2, m_path);
追问
你这样的.GetPathName()是获得路径名吧?我这个函数如果改成获得路径名就能正常运行了,可是我想获得的是目录名啊,所以用GetFolderPath()这个函数,可是总出错。所以肯定不是是后一句错了,而是在m_path=fileDlg.GetFolderPath();就弹这样的错误
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询