COMSpy

指定した COM コンポーネントに対する QueryInterface、AddRef、Release などの呼び出しをトレースするツール。
http://staff.develop.com/jasonw/comspy/default.htm


こんな感じのデータが得られる。
COM コンポーネントのどのメソッドを呼び出したかまではわからない模様(原理的に不可能?)。

{Object}                               {Method}                                   {Result}                                               {アイコンの登録番号}

C:\WINDOWS\System32\WScript.exe        Process Opened                             (データ無し)                                           4
SysService.CSystemInfo                 Object Created                             (データ無し)                                           4
0x017D1650 - (SysService.CSystemInfo)  IUnknown::QueryInterface(IUnknown)         00000001                                               8
0x017D1650 - (SysService.CSystemInfo)  IUnknown::QueryInterface(IObjectWithSite)  (0x80004002) インターフェイスがサポートされていません  9
0x017D1650 - (SysService.CSystemInfo)  IUnknown::AddRef()                         00000002                                               5
0x017D1650 - (SysService.CSystemInfo)  IUnknown::QueryInterface(IDispatch)        00000001                                               8
0x017D1650 - (SysService.CSystemInfo)  IDispatch::AddRef()                        00000002                                               5
0x017D1650 - (SysService.CSystemInfo)  IDispatch::Release()                       00000001                                               6
0x017D1650 - (SysService.CSystemInfo)  IUnknown::Release()                        00000001                                               6
0x017D1650 - (SysService.CSystemInfo)  IDispatch::AddRef()                        00000002                                               5
0x017D1650 - (SysService.CSystemInfo)  IDispatch::Release()                       00000001                                               6
0x017D1650 - (SysService.CSystemInfo)  IUnknown::QueryInterface(IDispatchEx)      (0x80004002) インターフェイスがサポートされていません  9
0x017D1650 - (SysService.CSystemInfo)  IDispatch::GetIDsOfNames                   (0x00000000) S_OK                                      0
0x017D1650 - (SysService.CSystemInfo)  IDispatch::AddRef()                        00000002                                               5
0x017D1650 - (SysService.CSystemInfo)  IUnknown::QueryInterface(IDispatchEx)      (0x80004002) インターフェイスがサポートされていません  9
0x017D1650 - (SysService.CSystemInfo)  IDispatch::Invoke                          (0x00000000) S_OK                                      0
0x017D1650 - (SysService.CSystemInfo)  IDispatch::Release()                       00000001                                               6
0x017D1650 - (SysService.CSystemInfo)  IDispatch::Release()                       00000000                                               6
0x017D1650 - (SysService.CSystemInfo)  IUnknown::Release()                        00000000                                               6
0x017D1650 - (SysService.CSystemInfo)  Object Destroyed                           (データ無し)                                           4
Process closed                         WScript.exe                                (データ無し)                                           4

spycfg でチェックをつけるとレジストリの InProcServer32 を書き変えてコクラス生成をフックしてしまうので、使い終わったら全部のチェックを外した方がよさそう。