删除窗口中正在运行的文件
Delete running file in windows
我写了一些安装程序/卸载程序软件。在我的 Uninst 程序中,我需要删除目录中的所有文件和 self 文件。如何在窗口中实现这一点?正在运行的文件被阻止
这不是一个真正的Qt问题,而是更直接的Windows。与 Linux 和 OSX 不同,正如您所发现的,您正在运行的文件是锁定的,因此您无法在运行时删除它。
不过,您可以做的是使用 RunOnce 注册表项在用户登录时单独运行一次程序,这将为您执行文件的最终删除。如文档中所述,RunOnce 条目在运行之前被删除,因此它按预期执行。
无法删除 Windows 中当前保持打开状态的文件(可执行文件由操作系统本身保持打开状态)。大多数应用程序解决此问题的方法是使用安装程序框架,然后有一个"启动时"处理程序来清理最后的余数。
一个技巧是使用批处理文件进行最终清理;允许批处理文件自行删除。这是因为在这种情况下,实际的可执行文件是CMD.EXE,不需要删除。
相关文章:
- CMake-按正确顺序将项目与C运行时对象文件链接
- SSH通过/sbin/SSH无法读取RSA密钥文件(从控制台运行)
- 读取文件时运行时的未知行为
- 如何在.obj文件上运行IlDasm?
- 编译多个C++文件.调用二进制文件以运行代码
- 如何在Google Cloud Functions上运行C++文件?
- 无法在 VS Code 上使用代码运行程序运行C++文件
- 如何在不受其他文件影响的情况下"by itself" Visual Studio 项目中运行C++文件?
- 以目录作为参数运行C 文件?而是使用bash
- 如何在制作后运行.o文件
- 如何在 OpenBR 中运行C++文件
- 包含库的c++运行文件失败而没有编译错误(CMake / CLion)
- 在尝试运行文件时,yaml-cpp出错
- 编译并运行文件夹中提供的MySQL++和C++示例
- 如何在不使用cygwin的情况下在Windows (Vista)中运行c++文件的makefile
- 运行c++文件,输入Sublime Text 2
- 如何在windows7的turbo c中运行c++文件
- 运行文件直到*字符串*,然后读取列直到*没有十进制*
- 从命令行运行 c++ 文件
- 不能在VS Code 2015中调试或运行文件