如何允许在程序运行的时候删除用CFileDialog打开的dialog中创建的文件夹。
来源:互联网 发布:c语言设计一个四则运算 编辑:程序博客网 时间:2024/04/24 03:06
SQA发现的问题:
在保存文件的时候,在打开的对话框(程序中用CFileDialog打开,flag为OFN_OVERWRITEPROMPT | OFN_HIDEREADONLY )中创建了一个新的文件夹,然后将文件存到该文件夹中。保存完毕之后,在程序没有退出的情况下去删除该文件夹,发现里面的文件被删除了,可是系统不允许删除文件夹。
解决办法:
将flag的改为:OFN_OVERWRITEPROMPT | OFN_HIDEREADONLY | OFN_NOCHANGEDIR。
注意:
由于文件夹被删除了,所以文件保存的位置就不存在了。所以保存文件之前要检查一下文件夹是否存在,如果不存在,则将文件夹设置回默认的文件夹,参考代码如下:
参考文章:(从这篇文章里可以隐隐约约知道为什么要将OFN_NOCHANGEDIR加入flag)
http://www.eggheadcafe.com/software/aspnet/29631011/cfiledialog-dialog-doesnt-release-program-folder-untill-the-app-exits.aspx
- 如何允许在程序运行的时候删除用CFileDialog打开的dialog中创建的文件夹。
- 打开eclipse的时候会自动在桌面创建文件夹,删除之后再次打开还是会自动创建
- 在程序在Unity中运行时,如何在 Unity不是当前窗口的时候,使程序一直在运行?
- 用DOS命令创建、打开、删除用户不能打开不能在windows系统下直接删除的文件夹
- 在Qt编写的程序中打开文件夹
- 在Qt编写的程序中打开文件夹 .
- 在Qt编写的程序中打开文件夹
- 在Qt编写的程序中打开文件夹
- 在Qt编写的程序中打开文件夹~Windows Explore
- psexec在第一次运行的时候会弹出框框,让用户选择是否允许此软件运行,如何去除它?
- 如何在基于Dialog的程序中添加menu菜单 ?
- 当每次要删除提示其中的文件和文件夹在另一程序中打开该怎么查看?
- 如何在spark中删除hdfs的某个文件夹
- 删除某个文件(或者文件夹)的时候,提示,"操作无法完成,因为文件已在XX中打开,请关闭该文件并重试"
- CFileDialog占用文件夹的解决方法
- 创建不能双击打开也不能删除的文件夹
- 如何在xcode中创建新的文件和文件夹
- 如何在Nokia上运行J2ME创建的Jar程序
- ptr = malloc(0*sizeof(char));
- 音视频同步专题
- 解决oracle用户锁定
- 掌握 Linux 调试技术
- Cannot find a valid baseurl for repo: core 错误解决办法
- 如何允许在程序运行的时候删除用CFileDialog打开的dialog中创建的文件夹。
- 如何用外部表查看报警日志(alert log)中昨天以来产生的错误
- oracle中实现split函数的存储过程
- C++中static成员函数访问非static成员变量
- 简单案例讲解petshop4.0的工厂模式(适合初学者)
- 解决启动vsftp服务时遇到的问题 (Starting vsftpd startproc: exit status of parent of /usr/sbin/vsftpd)
- Symbian H264视频解码
- Java中的路径:IPath与IFile
- 《Ajax基础教程》