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

IDebugHostExtensibility

COM
IID3c2b24e1-11d0-4f86-8ae5-4df166f73253継承元IUnknown自前メソッド開始 vtbl3

メソッド 2

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

vtbl 3 HRESULT CreateFunctionAlias(LPWSTR aliasName, IModelObject* functionObject)
aliasNameLPWSTRin作成する関数エイリアス(別名)の名前を指定する。
functionObjectIModelObject*inエイリアスに関連付ける関数を表すモデルオブジェクトへのポインタである。
vtbl 4 HRESULT DestroyFunctionAlias(LPWSTR aliasName)
aliasNameLPWSTRin破棄する関数エイリアスの名前を指定する。

HSP用 COM定義

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

#define global IID_IDebugHostExtensibility "{3C2B24E1-11D0-4F86-8AE5-4DF166F73253}"
#usecom global IDebugHostExtensibility IID_IDebugHostExtensibility "{}"
#comfunc global IDebugHostExtensibility_CreateFunctionAlias   3 wstr,sptr
#comfunc global IDebugHostExtensibility_DestroyFunctionAlias  4 wstr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。