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);
}
这是我的那段代码,可以编译通过,也可以找文件,但是找到文件了点打开,就提示

请问应该如何使用呢?
展开
 我来答
百度网友1680984
2013-07-04 · TA获得超过414个赞
知道小有建树答主
回答量:968
采纳率:0%
帮助的人:456万
展开全部
用GetPathName获取文件路径,然后再将最后一个” \ “后的部分删除就是所在目录名称了
更多追问追答
追问
呃,我也知道那个函数能获得路径,但是能告诉我怎么删么。。。
追答
cstrinhg path;
path=path.Left(path.ReverseFind('\\'));
wsj99868900
2013-07-04 · TA获得超过5712个赞
知道小有建树答主
回答量:250
采纳率:60%
帮助的人:47.5万
展开全部
建议你用如下方式打开文件
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();就弹这样的错误
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式