Win32 API 日本語リファレンス
ホームSystem.Diagnostics.Debug.Extensions › IDebugHostSymbols

IDebugHostSymbols

COM
IID854fd751-c2e1-4eb2-b525-6619cb97a588継承元IUnknown自前メソッド開始 vtbl3

メソッド 7

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT CreateModuleSignature(LPWSTR pwszModuleName, LPWSTR pwszMinVersion, LPWSTR pwszMaxVersion, IDebugHostModuleSignature** ppModuleSignature)
pwszModuleNameLPWSTRinシグネチャの対象とするモジュール名を表す UTF-16 文字列(LPWSTR)を指定する。
pwszMinVersionLPWSTRinoptional一致対象とする最小バージョンを表す UTF-16 文字列を指定する。下限を設けない場合は NULL を指定できる。
pwszMaxVersionLPWSTRinoptional一致対象とする最大バージョンを表す UTF-16 文字列を指定する。上限を設けない場合は NULL を指定できる。
ppModuleSignatureIDebugHostModuleSignature**out生成されたモジュールシグネチャを受け取る IDebugHostModuleSignature ポインタへのポインタである。[out] 引数である。
vtbl 4 HRESULT CreateTypeSignature(LPWSTR signatureSpecification, IDebugHostModule* module, IDebugHostTypeSignature** typeSignature)
signatureSpecificationLPWSTRin型シグネチャを記述する仕様文字列を表す UTF-16 文字列(LPWSTR)を指定する。
moduleIDebugHostModule*inoptional型シグネチャを対応付けるモジュールを指す IDebugHostModule へのポインタである。
typeSignatureIDebugHostTypeSignature**out生成された型シグネチャを受け取る IDebugHostTypeSignature ポインタへのポインタである。[out] 引数である。
vtbl 5 HRESULT CreateTypeSignatureForModuleRange(LPWSTR signatureSpecification, LPWSTR moduleName, LPWSTR minVersion, LPWSTR maxVersion, IDebugHostTypeSignature** typeSignature)
signatureSpecificationLPWSTRin型シグネチャを記述する仕様文字列を表す UTF-16 文字列(LPWSTR)を指定する。
moduleNameLPWSTRin対象とするモジュール名を表す UTF-16 文字列(LPWSTR)を指定する。
minVersionLPWSTRinoptional一致対象とする最小バージョンを表す UTF-16 文字列を指定する。下限を設けない場合は NULL を指定できる。
maxVersionLPWSTRinoptional一致対象とする最大バージョンを表す UTF-16 文字列を指定する。上限を設けない場合は NULL を指定できる。
typeSignatureIDebugHostTypeSignature**out生成された型シグネチャを受け取る IDebugHostTypeSignature ポインタへのポインタである。[out] 引数である。
vtbl 6 HRESULT EnumerateModules(IDebugHostContext* context, IDebugHostSymbolEnumerator** moduleEnum)
contextIDebugHostContext*inモジュールを列挙する対象のデバッグホストコンテキストを指す IDebugHostContext へのポインタである。
moduleEnumIDebugHostSymbolEnumerator**outモジュールを列挙する IDebugHostSymbolEnumerator を受け取るポインタへのポインタである。[out] 引数である。
vtbl 7 HRESULT FindModuleByName(IDebugHostContext* context, LPWSTR moduleName, IDebugHostModule** module)
contextIDebugHostContext*inモジュールを検索する対象のデバッグホストコンテキストを指す IDebugHostContext へのポインタである。
moduleNameLPWSTRin検索するモジュール名を表す UTF-16 文字列(LPWSTR)を指定する。
moduleIDebugHostModule**out見つかったモジュールを受け取る IDebugHostModule ポインタへのポインタである。[out] 引数である。
vtbl 8 HRESULT FindModuleByLocation(IDebugHostContext* context, Location moduleLocation, IDebugHostModule** module)
contextIDebugHostContext*inモジュールを検索する対象のデバッグホストコンテキストを指す IDebugHostContext へのポインタである。
moduleLocationLocationin検索の手がかりとなるアドレス位置を表す Location を指定する。
moduleIDebugHostModule**out指定位置を含むモジュールを受け取る IDebugHostModule ポインタへのポインタである。[out] 引数である。
vtbl 9 HRESULT GetMostDerivedObject(IDebugHostContext* pContext, Location location, IDebugHostType* objectType, Location* derivedLocation, IDebugHostType** derivedType)
pContextIDebugHostContext*inoptional解決を行う対象のデバッグホストコンテキストを指す IDebugHostContext へのポインタである。
locationLocationin対象オブジェクトのアドレス位置を表す Location を指定する。
objectTypeIDebugHostType*in対象オブジェクトの静的な型を指す IDebugHostType へのポインタである。
derivedLocationLocation*out最派生オブジェクトのアドレス位置を受け取る Location へのポインタである。[out] 引数である。
derivedTypeIDebugHostType**out最派生オブジェクトの実行時型を受け取る IDebugHostType ポインタへのポインタである。[out] 引数である。

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IDebugHostSymbols "{854FD751-C2E1-4EB2-B525-6619CB97A588}"
#usecom global IDebugHostSymbols IID_IDebugHostSymbols "{}"
#comfunc global IDebugHostSymbols_CreateModuleSignature              3 wstr,wstr,wstr,sptr
#comfunc global IDebugHostSymbols_CreateTypeSignature                4 wstr,sptr,sptr
#comfunc global IDebugHostSymbols_CreateTypeSignatureForModuleRange  5 wstr,wstr,wstr,wstr,sptr
#comfunc global IDebugHostSymbols_EnumerateModules                   6 sptr,sptr
#comfunc global IDebugHostSymbols_FindModuleByName                   7 sptr,wstr,sptr
#comfunc global IDebugHostSymbols_FindModuleByLocation               8 sptr,int,sptr
#comfunc global IDebugHostSymbols_GetMostDerivedObject               9 sptr,int,sptr,var,sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。