Win32 API 日本語リファレンス
ホームSystem.ComponentServices › IManagedActivationEvents

IManagedActivationEvents

COM
IIDa5f325af-572f-46da-b8ab-827c3d95d99e継承元IUnknown自前メソッド開始 vtbl3

メソッド 2

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

vtbl 3 HRESULT CreateManagedStub(IManagedObjectInfo* pInfo, BOOL fDist)
pInfoIManagedObjectInfo*in管理対象オブジェクトの情報を保持する IManagedObjectInfo インターフェイスへのポインタである。
fDistBOOLinスタブを分散 (リモート) 用に作成する場合に TRUE を指定する。
vtbl 4 HRESULT DestroyManagedStub(IManagedObjectInfo* pInfo)
pInfoIManagedObjectInfo*in破棄する管理対象スタブに対応する IManagedObjectInfo インターフェイスへのポインタである。

HSP用 COM定義

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

#define global IID_IManagedActivationEvents "{A5F325AF-572F-46DA-B8AB-827C3D95D99E}"
#usecom global IManagedActivationEvents IID_IManagedActivationEvents "{}"
#comfunc global IManagedActivationEvents_CreateManagedStub   3 sptr,int
#comfunc global IManagedActivationEvents_DestroyManagedStub  4 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。