基于对话框的程序,调用CFileDlg后程序默认路径被改变
导致数据库,图片等使用相对路径失效
如何在调用CFileDlg后恢复程序默认路径呢?
导致数据库,图片等使用相对路径失效
如何在调用CFileDlg后恢复程序默认路径呢?
解决方案 »
- 点击按钮让对话框增加高度-类似qq登陆框上'设置 '
- 有关Timer类的问题,请高手指教.
- 两个线程之间发消息,在debug模式下运行很好,但是到了release下另一个线程接收到消息后程序崩溃,请问大约是怎么回事?
- 关于Mschart的用法,UP有分
- xpdf如何在window下显示中文
- 如何利用已有的控件编写一个新控件,请各位帮帮忙!
- 怎样让Edit控件支持从word拷贝过来的文本(急)
- 怎样用VC来编程实现 重命名一个目录?
- 还是搞不明白OpenGL的矩阵堆栈。
- CListCtrl的菜鸟级问题,请指教!
- 中文输入遇到的问题
- 打开工程时出现Microsoft(R) Developer Studio 已停止工作
问题是,如果有人在这台计算机的其它地方打开文件对话框选择了文件,那么默认相对路径也会改变,你怎么办呢?所以还是要用绝对路径。
fileDlg.m_ofn.lpstrInitialDir = _T("xxxxx"); //这里指定默认的路径
GetModuleFileName(NULL, szFilePath, MAX_PATH); //获取当前EXE路径
(_tcsrchr(szFilePath, _T('\\')))[1] = 0; //删除文件名,只获得路径
CString strPath = szFilePath;
SetCurrentDirectory
获取当前EXE路径,然后程序结束时候设置当前路径
这样虽然Debug下有问题,但是发布之后就不存在问题
不知道这样解决可以么
或者用绝对路径,好的习惯应该是都用绝对路径
后来:
CFileDialog初始化的style加上OFN_NOCHANGEDIR就没问题了