Possible Duplicate:
DirectoryInfo.Delete(True) Doesn't Delete When Folder Structure is Open in Windows Explorer
各位,我正在写一个python测试工具,项目的一部分是卸载一个应用程序,然后每晚重新安装。卸载任务的一部分包括删除数据目录。白天,测试人员/开发人员将登录到计算机上,偶尔会打开一个命令提示符和/或日志文件。这导致我的脚本失败,因为如果另一个进程有一个文件句柄,windows将不允许我删除该文件。在
我想知道是否有可能得到进程的pid,它保存在文件上,这样我就可以用WMI或类似的方法杀死进程?我不想让别人退出。在
如果这是不可能的,那么有没有一种方法,从python,强制所有用户注销,以获得一个系统,我的脚本可以继续工作,而不必等待我出现并杀死进程/注销用户?在
欢迎提出任何建议。我不是一个有经验的windows程序员。在
看来sysinternals提供了解决方案。在
handle.exe完成了这项工作。在
执行一个系统调用(例如python中的subprocess模块)并在输出中搜索要删除的目录。获取pid,然后使用另一个对psKill.exe的系统调用终止进程。在
我还没有写的代码,但我已经通过了程序的命令喜欢和它的工作。用任何编程语言编写psTools的系统调用脚本应该很简单。在
相关问题 更多 >
编程相关推荐