试图在自己的程序中打开一个文件,并等到它关闭

时间:2018-03-24 09:15:40

标签: python windows subprocess registry

作为python项目的一部分,我正在编写我需要根据注册表在自己的程序中打开一个文件(可能是各种类型)(我需要它只在Windows上工作)并等到程序已关闭,因此我可以检查文件是否已更改(或在程序中编辑)。

我读了很多关于这个主题的其他问题,但我可以找到解决方案。

我尝试使用subproccess.Popen,call或check_all以及os.startfile和psutil来检查procces的pid。

编辑:所有文件都与打开它们的脚本位于同一文件夹中。我可以打开文件,但我不能让它等到它关闭。只有当程序是notepad.exe时它才会等待

编辑2 :到目前为止我使用了这段代码:

doc = subprocess.Popen(["start", "/WAIT", file_path], shell=True)
doc.wait()

此代码打开我要求的任何文件,但只有当notepad.exe是打开的程序时,doc.wait()才会等待。例如,我尝试用微软的单词打开一个.docx文件,它打开但没有等我关闭文件。 我无法在没有shell = True的情况下运行它,因为当我这样做时会抛出“可以找到文件”错误。

感谢您的回答, DOR

0 个答案:

没有答案