我正在自动化 PowerPoint。以前一切正常,但现在如果我在一个线程中实例化 PPT,即使在调用 pythoncom.CoInitialize() 之后,我也无法在另一个线程中获得它的名称和幻灯片计数。
线程 1:
pythoncom.CoInitialize()
self.pptApp = win32com.client.Dispatch("PowerPoint.Application")
线程2(一段时间后):
pythoncom.CoInitialize()
print "name", self.pptApp.ActivePresentation
请注意,如果我在初始线程上运行 Thread2 中的代码,它就可以工作。否则如上所述,它会引发此错误:
self.activePres = self.pptApp.ActivePresentation
File "C:\Python26\Lib\site-packages\win32com\client\dynamic.py", line 505, in __getattr__
ret = self._oleobj_.Invoke(retEntry.dispid,0,invoke_type,1)
com_error: (-2147220995, 'Object is not connected to server', None, None)