Ticket #20: winword-debug.patch

File winword-debug.patch, 1.3 KB (added by ragb, 2 years ago)

patch to winword.py to get more debug messages on WordDocument? class

  • winword.py

     
    271271class WordDocument(IAccessible): 
    272272 
    273273        def __init__(self,*args,**kwargs): 
     274                globalVars.log.debug("args = %s, kwargs = %s" % (str(args),str(kwargs))) 
    274275                self.TextInfo=WordDocumentTextInfo 
    275276                super(WordDocument,self).__init__(*args,**kwargs) 
    276277                self.dom=self.getDocumentObjectModel() 
     
    283284 
    284285        def getDocumentObjectModel(self): 
    285286                ptr=ctypes.c_void_p() 
    286                 if ctypes.windll.oleacc.AccessibleObjectFromWindow(self.windowHandle,IAccessibleHandler.OBJID_NATIVEOM,ctypes.byref(comtypes.automation.IDispatch._iid_),ctypes.byref(ptr))!=0: 
     287                globalVars.log.debug("self.windowHandle = %u" % self.windowHandle) 
     288                temp = ctypes.windll.oleacc.AccessibleObjectFromWindow(self.windowHandle,IAccessibleHandler.OBJID_NATIVEOM,ctypes.byref(comtypes.automation.IDispatch._iid_),ctypes.byref(ptr)) 
     289                if temp != 0: 
     290                        globalVars.log.debug("AccessibleObjectFromWindow returned %d" % temp) 
    287291                        raise OSError("No native object model") 
     292                globalVars.log.debug("native object model found") 
    288293                #We use pywin32 for large IDispatch interfaces since it handles them much better than comtypes 
    289294                o=pythoncom._univgw.interface(ptr.value,pythoncom.IID_IDispatch) 
    290295                t=o.GetTypeInfo()