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

IDebugApplicationThread

COM
IID51973c38-cb0c-11d0-b5c9-00a0244a0e7a継承元IRemoteDebugApplicationThread自前メソッド開始 vtbl12

メソッド 5

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

vtbl 12 HRESULT SynchronousCallIntoThread32(IDebugThreadCall32* pstcb, DWORD dwParam1, DWORD dwParam2, DWORD dwParam3)
pstcbIDebugThreadCall32*in対象スレッド内で同期的に呼び出すコールバックを表す IDebugThreadCall32 へのポインタである。
dwParam1DWORDinコールバックへ引き渡される第1のパラメータ(32 ビット)を指定する。
dwParam2DWORDinコールバックへ引き渡される第2のパラメータ(32 ビット)を指定する。
dwParam3DWORDinコールバックへ引き渡される第3のパラメータ(32 ビット)を指定する。
vtbl 13 HRESULT QueryIsCurrentThread()
vtbl 14 HRESULT QueryIsDebuggerThread()
vtbl 15 HRESULT SetDescription(LPWSTR pstrDescription)
pstrDescriptionLPWSTRinスレッドに設定する説明文字列を指定する。
vtbl 16 HRESULT SetStateString(LPWSTR pstrState)
pstrStateLPWSTRinスレッドの状態を表す文字列を指定する。

HSP用 COM定義

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

#define global IID_IDebugApplicationThread "{51973C38-CB0C-11D0-B5C9-00A0244A0E7A}"
#usecom global IDebugApplicationThread IID_IDebugApplicationThread "{}"
#comfunc global IDebugApplicationThread_SynchronousCallIntoThread32  12 sptr,int,int,int
#comfunc global IDebugApplicationThread_QueryIsCurrentThread         13
#comfunc global IDebugApplicationThread_QueryIsDebuggerThread        14
#comfunc global IDebugApplicationThread_SetDescription               15 wstr
#comfunc global IDebugApplicationThread_SetStateString               16 wstr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。