CFileDialog改变文件路径导致的一系列问题(如无法安全删除u盘、访问相对路径失败)的解决方法
2012-07-09 13:05
976 查看
原创:qsycn
默认的CFileDialog选取文件的行为会改变当前路径
解决方法就是不让CFileDialog改变当前路径
在CFileDialog构造函数中
在参数dwFlags 中再或(|)一个OFN_NOCHANGEDIR即可
其在MSDN中的定义如下
OFN_NOCHANGEDIRRestores the current directory to its original value if the user changed the directory while searching for files.
Windows NT 4.0/2000/XP: This flag is ineffective for
GetOpenFileName.
默认的CFileDialog选取文件的行为会改变当前路径
解决方法就是不让CFileDialog改变当前路径
在CFileDialog构造函数中
explicit CFileDialog( BOOL bOpenFileDialog, LPCTSTR lpszDefExt = NULL, LPCTSTR lpszFileName = NULL, DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, LPCTSTR lpszFilter = NULL, CWnd* pParentWnd = NULL, DWORD dwSize = 0, BOOL bVistaStyle = TRUE );
在参数dwFlags 中再或(|)一个OFN_NOCHANGEDIR即可
其在MSDN中的定义如下
OFN_NOCHANGEDIRRestores the current directory to its original value if the user changed the directory while searching for files.
Windows NT 4.0/2000/XP: This flag is ineffective for
GetOpenFileName.
相关文章推荐
- 关于IIS服务启动失败的问题:“IIS提示‘另一个程序正在使用此文件,进程无法访问’”,的解决方法
- Hadoop HDFS 文件访问权限问题导致Java Web 上传文件到Hadoop失败的原因分析及解决方法
- 关于拖拽文件启动VBS文件会导致相对路径改变的问题以及解决方法
- C:/Program Files/Microsoft SQL Server/MSSQL.1/MSSQL/DATA 无法在服务器上访问指定的路径或文件。请确保您具有必需的安全权限且该路径或文件存在。 解决方法
- ubuntu下删除U盘文件到回收站无法清空问题的解决
- 解决使用CFileDialog造成的ADO访问相对路径下的数据库出错问题
- php命令行(cli)下执行PHP脚本文件的相对路径的问题解决方法
- labview中,用相对路径动态调用的子VI,在生成EXE文件后无法调用问题的解决
- 解决“U盘插入Ubuntu后文件只读且无法删除”问题
- Oracle表空间文件损坏导致的数据库异常关闭并启动失败问题的解决方法
- 解决vi命令不正常退出导致.swp文件无法删除问题的梦幻之旅
- 浏览器版本不同导致文件无法下载问题解决方法
- 拒绝访问 无法删除文件的解决方法
- 解决MVC4发布在IIS7后,路径无法访问.apk文件的解决方法
- 文件夹无法访问拒绝访问,无法删除文件的,快速有效解决方法
- Dynamics CRM 依赖组件类型为应用程序功能区导致的无法删除实体问题的解决方法
- 【转】“正由另一进程使用,因此该进程无法访问该文件”的问题&解决方法
- 更改apache(2.2.17版本)默认文件路径引起的无权限访问问题的解决方法
- 访问 IIS 元数据库失败 或 W3SVC 的访问权问题解决方法 或 无法在Web服务器上启动调试
- 如何拿回被恶意或者不小心删除硬盘所有者权限而导致的文件访问以及修改权限被限制(NTFS格式安全权限问题)