| Server IP : 123.56.80.60 / Your IP : 216.73.216.78 Web Server : Apache/2.4.54 (Win32) OpenSSL/1.1.1s PHP/7.4.33 mod_fcgid/2.3.10-dev System : Windows NT iZhx3sob14hnz7Z 10.0 build 14393 (Windows Server 2016) i586 User : SYSTEM ( 0) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/Program Files (x86)/Alibaba/Aegis/PythonLoaderTemp/third_party/win32com/client/ |
Upload File : |
"""Utilities for working with Connections""" import win32com.server.util, pythoncom class SimpleConnection: "A simple, single connection object" def __init__(self, coInstance = None, eventInstance = None, eventCLSID = None, debug = 0): self.cp = None self.cookie = None self.debug = debug if not coInstance is None: self.Connect(coInstance , eventInstance, eventCLSID) def __del__(self): try: self.Disconnect() except pythoncom.error: # Ignore disconnection as we are torn down. pass def _wrap(self, obj): useDispatcher = None if self.debug: from win32com.server import dispatcher useDispatcher = dispatcher.DefaultDebugDispatcher return win32com.server.util.wrap(obj, useDispatcher=useDispatcher) def Connect(self, coInstance, eventInstance, eventCLSID = None): try: oleobj = coInstance._oleobj_ except AttributeError: oleobj = coInstance cpc=oleobj.QueryInterface(pythoncom.IID_IConnectionPointContainer) if eventCLSID is None: eventCLSID = eventInstance.CLSID comEventInstance = self._wrap(eventInstance) self.cp=cpc.FindConnectionPoint(eventCLSID) self.cookie = self.cp.Advise(comEventInstance) def Disconnect(self): if not self.cp is None: if self.cookie: self.cp.Unadvise(self.cookie) self.cookie = None self.cp = None