I'm going on with my stydy, inspecting the gc..

the only object that seems very satrange is  listed below.
ITDPropClass its the com object of the com application
there is somone that can tell me if i'm on the right way?
dose _vtables_ have a particular mening?

regards,
Matteo

42760064 <type 'dict'>
{'ITDPropClass_vtables_': [((u'Name', u'pVal'), 10, (10, (), [(16392, 10, None, None)], 1, 2, 4, 0, 60, (3, 0, None, None), 0)), ((u'SetValue', u'typeValue', u'maxElValue'), 11, (11, (), [(12, 1, None, None), (3, 1, None, None)], 1, 1, 4, 0, 64, (3, 0, None, None), 0)), ((u'GetValue', u'typeValue', u'maxElValue'), 12, (12, (), [(16396, 2, None, None), (16387, 2, None, None)], 1, 1, 4, 0, 68, (3, 0, None, None), 0)), ((u'Description', u'pVal'), 13, (13, (), [(16392, 10, None, None)], 1, 2, 4, 0, 72, (3, 0, None, None), 0)), ((u'Description', u'pVal'), 13, (13, (), [(8, 1, None, None)], 1, 4, 4, 0, 76, (3, 0, None, None), 0)), ((u'UsedBy', u'pVal'), 14, (14, (), [(24585, 10, None, "IID('{D344208D-C991-11D3-BDD6-00500400405B}')")], 1, 2, 4, 0, 80, (3, 0, None, None), 0)), ((u'ClassReadable', u'pVal'), 15, (15, (), [(16395, 10, None, None)], 1, 2, 4, 0, 84, (3, 0, None, None), 0)), ((u'ClassReadable', u'pVal'), 15, (15, (), [(11, 1, None, None)], 1, 4, 4, 0, 88, (3, 0, None, None), 0)), ((u'ClassWritable', u'pVal'), 16, (16, (), [(16395, 10, None, None)], 1, 2, 4, 0, 92, (3, 0, None, None), 0)), ((u'ClassWritable', u'pVal'), 16, (16, (), [(11, 1, None, None)], 1, 4, 4, 0, 96, (3, 0, None, None), 0)), ((u'ClassDeletable', u'pVal'), 17, (17, (), [(16395, 10, None, None)], 1, 2, 4, 0, 100, (3, 0, None, None), 0)), ((u'ClassDeletable', u'pVal'), 17, (17, (), [(11, 1, None, None)], 1, 4, 4, 0, 104, (3, 0, None, None), 0)), ((u'PropertyInheritance', u'pVal'), 18, (18, (), [(16395, 10, None, None)], 1, 2, 4, 0, 108, (3, 0, None, None), 0)), ((u'PropertyInheritance', u'pVal'), 18, (18, (), [(11, 1, None, None)], 1, 4, 4, 0, 112, (3, 0, None, None), 0)), ((u'PropertyReadable', u'pVal'), 19, (19, (), [(16395, 10, None, None)], 1, 2, 4, 0, 116, (3, 0, None, None), 0)), ((u'PropertyReadable', u'pVal'), 19, (19, (), [(11, 1, None, None)], 1, 4, 4, 0, 120, (3, 0, None, None), 0)), ((u'PropertyWritable', u'pVal'), 20, (20, (), [(16395, 10, None, None)], 1, 2, 4, 0, 124, (3, 0, None, None), 0)), ((u'PropertyWritable', u'pVal'), 20, (20, (), [(11, 1, None, None)], 1, 4, 4, 0, 128, (3, 0, None, None), 0)), ((u'PropertyDeletable', u'pVal'), 21, (21, (), [(16395, 10, None, None)], 1, 2, 4, 0, 132, (3, 0, None, None), 0)), ((u'PropertyDeletable', u'pVal'), 21, (21, (), [(11, 1, None, None)], 1, 4, 4, 0, 136, (3, 0, None, None), 0)), ((u'ClassSubType', u'pVal'), 22, (22, (), [(16387, 10, None, None)], 1, 2, 4, 0, 140, (3, 0, None, None), 0)), ((u'ClassSubType', u'pVal'), 22, (22, (), [(3, 1, None, None)], 1, 4, 4, 0, 144, (3, 0, None, None), 0)), ((u'ClassPrompt', u'pVal'), 23, (23, (), [(16392, 10, None, None)], 1, 2, 4, 0, 148, (3, 0, None, None), 0)), ((u'ClassPrompt', u'pVal'), 23, (23, (), [(8, 1, None, None)], 1, 4, 4, 0, 152, (3, 0, None, None), 0)), ((u'SetStyle', u'pCase', u'pFormat', u'pBlank'), 24, (24, (), [(3, 1, None, None), (3, 1, None, None), (11, 1, None, None)], 1, 1, 4, 0, 156, (3, 0, None, None), 0)), ((u'GetStyle', u'pCase', u'pFormat', u'pBlank'), 25, (25, (), [(16387, 2, None, None), (16387, 2, None, None), (16395, 2, None, None)], 1, 1, 4, 0, 160, (3, 0, None, None), 0)), ((u'SetRange', u'minValue', u'maxValue'), 26, (26, (), [(5, 1, None, None), (5, 1, None, None)], 1, 1, 4, 0, 164, (3, 0, None, None), 0)), ((u'GetRange', u'minValue', u'maxValue'), 27, (27, (), [(16389, 2, None, None), (16389, 2, None, None)], 1, 1, 4, 0, 168, (3, 0, None, None), 0))], 'python_version': 34014192, 'defaultUnnamedArg': <PyOleEmpty object at 0x01E49980>, 'defaultNamedNotOptArg': <PyOleEmpty object at 0x01E49980>, 'CLSID': IID('{F4503A16-F637-11D2-BD55-00500400405B}'), 'LibraryFlags': 8, 'MinorVersion': 0, 'DispatchBaseClass': <class win32com.client.DispatchBaseClass at 0x027AD228>, 'ITDPropClass': <class win32com.gen_py.F4503A16-F637-11D2-BD55-00500400405Bx0x1x0.ITDPropClass.ITDPropClass at 0x028C46F8>, '__package__': 'win32com.gen_py.F4503A16-F637-11D2-BD55-00500400405Bx0x1x0', 'IID': <built-in function IID>, 'LCID': 0, 'makepy_version': '0.5.01', '__doc__': 'think3 thinkdesign Type Library', '__builtins__': {'bytearray': <type 'bytearray'>, 'IndexError': <type 'exceptions.IndexError'>, 'all': <built-in function all>, 'help': Type help() for interactive help, or help(object) for help about object., 'vars': <built-in function vars>, 'SyntaxError': <type 'exceptions.SyntaxError'>, 'unicode': <type 'unicode'>, 'UnicodeDecodeError': <type 'exceptions.UnicodeDecodeError'>, 'memoryview': <type 'memoryview'>, 'isinstance': <built-in function isinstance>, 'copyright': Copyright (c) 2001-2012 Python Software Foundation.
All Rights Reserved.

Copyright (c) 2000 BeOpen.com.
All Rights Reserved.

Copyright (c) 1995-2001 Corporation for National Research Initiatives.
All Rights Reserved.

Copyright (c) 1991-1995 Stichting Mathematisch Centrum, Amsterdam.
All Rights Reserved., 'NameError': <type 'exceptions.NameError'>, 'BytesWarning': <type 'exceptions.BytesWarning'>, 'dict': <type 'dict'>, 'input': <function input at 0x02077570>, 'oct': <built-in function oct>, 'bin': <built-in function bin>, 'SystemExit': <type 'exceptions.SystemExit'>, 'StandardError': <type 'exceptions.StandardError'>, 'format': <built-in function format>, 'repr': <built-in function repr>, 'sorted': <built-in function sorted>, 'False': False, 'RuntimeWarning': <type 'exceptions.RuntimeWarning'>, 'list': <type 'list'>, 'iter': <built-in function iter>, 'reload': <built-in function reload>, 'Warning': <type 'exceptions.Warning'>, '__package__': None, 'round': <built-in function round>, 'dir': <built-in function dir>, 'cmp': <built-in function cmp>, 'set': <type 'set'>, 'bytes': <type 'str'>, 'reduce': <built-in function reduce>, 'intern': <built-in function intern>, 'issubclass': <built-in function issubclass>, 'Ellipsis': Ellipsis, 'EOFError': <type 'exceptions.EOFError'>, 'locals': <built-in function locals>, 'BufferError': <type 'exceptions.BufferError'>, 'slice': <type 'slice'>, 'FloatingPointError': <type 'exceptions.FloatingPointError'>, 'sum': <built-in function sum>, 'getattr': <built-in function getattr>, 'abs': <built-in function abs>, 'exit': Use exit() or Ctrl-Z plus Return to exit, 'print': <built-in function print>, 'True': True, 'FutureWarning': <type 'exceptions.FutureWarning'>, 'ImportWarning': <type 'exceptions.ImportWarning'>, 'None': None, 'hash': <built-in function hash>, 'ReferenceError': <type 'exceptions.ReferenceError'>, 'len': <built-in function len>, 'credits': Thanks to CWI, CNRI, BeOpen.com, Zope Corporation and a cast of thousands for supporting Python development. See www.python.org for more information., 'frozenset': <type 'frozenset'>, '__name__': '__builtin__', 'ord': <built-in function ord>, 'super': <type 'super'>, 'TypeError': <type 'exceptions.TypeError'>, 'license': Type license() to see the full license text, 'KeyboardInterrupt': <type 'exceptions.KeyboardInterrupt'>, 'UserWarning': <type 'exceptions.UserWarning'>, 'filter': <built-in function filter>, 'range': <built-in function range>, 'staticmethod': <type 'staticmethod'>, 'SystemError': <type 'exceptions.SystemError'>, 'BaseException': <type 'exceptions.BaseException'>, 'pow': <built-in function pow>, 'RuntimeError': <type 'exceptions.RuntimeError'>, 'float': <type 'float'>, 'MemoryError': <type 'exceptions.MemoryError'>, 'StopIteration': <type 'exceptions.StopIteration'>, 'globals': <built-in function globals>, 'divmod': <built-in function divmod>, 'enumerate': <type 'enumerate'>, 'apply': <built-in function apply>, 'LookupError': <type 'exceptions.LookupError'>, 'open': <built-in function open>, 'quit': Use quit() or Ctrl-Z plus Return to exit, 'basestring': <type 'basestring'>, 'UnicodeError': <type 'exceptions.UnicodeError'>, 'zip': <built-in function zip>, 'hex': <built-in function hex>, 'long': <type 'long'>, 'next': <built-in function next>, 'ImportError': <type 'exceptions.ImportError'>, 'chr': <built-in function chr>, 'xrange': <type 'xrange'>, 'type': <type 'type'>, '__doc__': "Built-in functions, exceptions, and other objects.\n\nNoteworthy: None is the `nil' object; Ellipsis represents `...' in slices.", 'Exception': <type 'exceptions.Exception'>, 'tuple': <type 'tuple'>, 'UnicodeTranslateError': <type 'exceptions.UnicodeTranslateError'>, 'reversed': <type 'reversed'>, 'UnicodeEncodeError': <type 'exceptions.UnicodeEncodeError'>, 'IOError': <type 'exceptions.IOError'>, 'hasattr': <built-in function hasattr>, 'delattr': <built-in function delattr>, 'setattr': <built-in function setattr>, 'raw_input': <function raw_input at 0x02077530>, 'SyntaxWarning': <type 'exceptions.SyntaxWarning'>, 'compile': <built-in function compile>, 'ArithmeticError': <type 'exceptions.ArithmeticError'>, 'str': <type 'str'>, 'property': <type 'property'>, 'GeneratorExit': <type 'exceptions.GeneratorExit'>, 'int': <type 'int'>, '__import__': <built-in function __import__>, 'KeyError': <type 'exceptions.KeyError'>, 'coerce': <built-in function coerce>, 'PendingDeprecationWarning': <type 'exceptions.PendingDeprecationWarning'>, 'file': <type 'file'>, 'EnvironmentError': <type 'exceptions.EnvironmentError'>, 'unichr': <built-in function unichr>, 'id': <built-in function id>, 'OSError': <type 'exceptions.OSError'>, 'DeprecationWarning': <type 'exceptions.DeprecationWarning'>, 'min': <built-in function min>, 'UnicodeWarning': <type 'exceptions.UnicodeWarning'>, 'execfile': <built-in function execfile>, 'any': <built-in function any>, 'complex': <type 'complex'>, 'bool': <type 'bool'>, 'ValueError': <type 'exceptions.ValueError'>, 'NotImplemented': NotImplemented, 'map': <built-in function map>, 'buffer': <type 'buffer'>, 'max': <built-in function max>, 'object': <type 'object'>, 'TabError': <type 'exceptions.TabError'>, 'callable': <built-in function callable>, 'ZeroDivisionError': <type 'exceptions.ZeroDivisionError'>, 'eval': <built-in function eval>, '__debug__': True, 'IndentationError': <type 'exceptions.IndentationError'>, 'AssertionError': <type 'exceptions.AssertionError'>, 'classmethod': <type 'classmethod'>, 'UnboundLocalError': <type 'exceptions.UnboundLocalError'>, 'NotImplementedError': <type 'exceptions.NotImplementedError'>, 'AttributeError': <type 'exceptions.AttributeError'>, 'OverflowError': <type 'exceptions.OverflowError'>, 'WindowsError': <type 'exceptions.WindowsError'>}, '__file__': 'C:\\Python27\\lib\\site-packages\\win32com\\gen_py\\F4503A16-F637-11D2-BD55-00500400405Bx0x1x0\\ITDPropClass.pyc', 'ITDPropClass_vtables_dispatch_': 1, '__name__': 'win32com.gen_py.F4503A16-F637-11D2-BD55-00500400405Bx0x1x0.ITDPropClass', 'pywintypes': <module 'pywintypes' from 'C:\Windows\system32\pywintypes27.dll'>, 'defaultNamedOptArg': <PyOleEmpty object at 0x01E49980>, 'MajorVersion': 1, 'Dispatch': <function Dispatch at 0x027BEDB0>, 'win32com': <module 'win32com' from 'C:\Python27\lib\site-packages\win32com\__init__.pyc'>, 'pythoncom': <module 'pythoncom' from 'C:\Windows\system32\pythoncom27.dll'>}


Il 01/10/2012 03:41, Mark Hammond ha scritto:
On 28/09/2012 10:42 PM, Matteo Boscolo wrote:
this is the log of part of my application

DEBUG:root:__DEL__
DEBUG:root:pythoncom._GetInterfaceCount(): 4
DEBUG:root:pythoncom._GetGatewayCount():   0|
DEBUG:Root:pythoncom.CoUninitialize()|
DEBUG:root:pythoncom._GetInterfaceCount(): 4
DEBUG:root:pythoncom._GetGatewayCount():   0

as you can see the GetInterfaceCount is still at 4 ..
there is a way to know witch object are the 4 that came from the
GetInterfaceCount ?

Not directly - only a simple counter is tracked, not a list of what the objects are. If you are lucky, you might be able to use the 'gc' module to locate all live objects and see what you can find alive that "looks" like a COM object (but even that probably will not tell you where the reference actually lives)

Mark


regards,
matteo



_______________________________________________
python-win32 mailing list
python-win32@python.org
http://mail.python.org/mailman/listinfo/python-win32




_______________________________________________
python-win32 mailing list
python-win32@python.org
http://mail.python.org/mailman/listinfo/python-win32

Reply via email to