【发布时间】:2014-10-01 23:16:32
【问题描述】:
我正在打开和归档 Visio 文件。
visio = comclt.Dispatch("Visio.Application")
wsh= comclt.Dispatch("WScript.Shell")
wsh.AppActivate("Microsoft Visio")
for i in os.listdir(path): #loops through the path
if i[-3:]=='vsd': #checks to see if it is a visio file
doc = visio.Documents.Open(path+'\\'+i)
但是当我打开某些 Visio 文件时,因为 visio 文件是在存在本地模具的另一台机器上创建的,所以会出现 .vss is part of workspace but cannot be opened 错误。这不是问题,我可以直接点击ok。所以我输入了发送密钥ENTER的代码。
这是我的问题。我有下面的代码。但它不起作用,因为(我认为)代码在doc = visio.Documents.Open(path+'\\'+i) 上暂停并且在按下ok 之前不会继续。一旦我手动按下ok,代码会在继续之前休眠 2 秒。
time.sleep(2)
wsh.AppActivate("Microsoft Visio")
wsh.SendKeys("{ENTER}")
我如何告诉python不要等待doc = visio.Documents.Open(path+'\\'+i)?或者是另一种解决这个问题的方法?
【问题讨论】: