Christian K. schrieb: >> Second, if you are running the exact sample that I posted then it should work >> for InternetExplorer, and with slight changes also for Outlook. At least >> it worked for me. > > Well, here it doesn't.
comtypes uses fairly extensive logging calls in certain areas. You can enable this to find out the reason. Here is a little code snippet that shows what happens on my system when I call GetEvents() with Internet Explorer: <code> from comtypes.client import CreateObject, GetEvents import logging ie = CreateObject("InternetExplorer.Application") logging.basicConfig(level=logging.DEBUG) GetEvents(ie, sink=object()) <code/> and here is the output: DEBUG:comtypes.client._events:<POINTER(IWebBrowser2) object e27d00> using sinkinterface from clsid <class 'comtypes.gen. _EAB22AC0_30C1_11CF_A7EB_0000C05BAE0B_0_1_1.DWebBrowserEvents2'> DEBUG:comtypes.client._events:Start advise <class 'comtypes.gen._EAB22AC0_30C1_11CF_A7EB_0000C05BAE0B_0_1_1.DWebBrowserE vents2'> DEBUG:comtypes._comobject:<comtypes.client._events._DispEventReceiver object at 0x00DAD910>.QueryInterface({00000003-000 0-0000-C000-000000000046}) -> E_NOINTERFACE DEBUG:comtypes._comobject:<comtypes.client._events._DispEventReceiver object at 0x00DAD910>.QueryInterface({00000003-000 0-0000-C000-000000000046}) -> E_NOINTERFACE DEBUG:comtypes._comobject:<comtypes.client._events._DispEventReceiver object at 0x00DAD910>.QueryInterface({0000001B-000 0-0000-C000-000000000046}) -> E_NOINTERFACE DEBUG:comtypes._comobject:<comtypes.client._events._DispEventReceiver object at 0x00DAD910>.QueryInterface({00000000-000 0-0000-C000-000000000046}) -> S_OK DEBUG:comtypes._comobject:1 active COM objects: Added <comtypes.client._events._DispEventReceiver object at 0x00DAD910 > DEBUG:comtypes._comobject:<comtypes.client._events._DispEventReceiver object at 0x00DAD910>.AddRef() -> 1 DEBUG:comtypes._comobject:<comtypes.client._events._DispEventReceiver object at 0x00DAD910>.AddRef() -> 2 DEBUG:comtypes._comobject:<comtypes.client._events._DispEventReceiver object at 0x00DAD910>.QueryInterface({00000018-000 0-0000-C000-000000000046}) -> E_NOINTERFACE DEBUG:comtypes._comobject:<comtypes.client._events._DispEventReceiver object at 0x00DAD910>.QueryInterface({00000019-000 0-0000-C000-000000000046}) -> E_NOINTERFACE DEBUG:comtypes._comobject:<comtypes.client._events._DispEventReceiver object at 0x00DAD910>.QueryInterface({4C1E39E1-E3E 3-4296-AA86-EC938D896E92}) -> E_NOINTERFACE DEBUG:comtypes._comobject:<comtypes.client._events._DispEventReceiver object at 0x00DAD910>.Release() -> 1 DEBUG:comtypes._comobject:<comtypes.client._events._DispEventReceiver object at 0x00DAD910>.QueryInterface({34A715A0-658 7-11D0-924A-0020AFC7AC4D}) -> S_OK DEBUG:comtypes._comobject:<comtypes.client._events._DispEventReceiver object at 0x00DAD910>.AddRef() -> 2 DEBUG:comtypes._comobject:<comtypes.client._events._DispEventReceiver object at 0x00DAD910>.AddRef() -> 3 DEBUG:comtypes:Release <POINTER(IConnectionPointContainer) object dab300> DEBUG:comtypes._comobject:<comtypes.client._events._DispEventReceiver object at 0x00DAD910>.Release() -> 2 DEBUG:comtypes._comobject:<comtypes.client._events._DispEventReceiver object at 0x00DAD910>.Release() -> 1 DEBUG:comtypes._comobject:<comtypes.client._events._DispEventReceiver object at 0x00DAD910>.Release() -> 0 DEBUG:comtypes._comobject:0 active COM objects: Removed <comtypes.client._events._DispEventReceiver object at 0x00DAD910 > DEBUG:comtypes:Release <POINTER(IConnectionPoint) object dab030> DEBUG:comtypes:Calling CoUnititialize() DEBUG:comtypes:CoUnititialize() done. You should run the snippet yourself and compare the output. Thomas _______________________________________________ Python-win32 mailing list Python-win32@python.org http://mail.python.org/mailman/listinfo/python-win32