ホーム › System.Diagnostics.Debug.ActiveScript › IRemoteDebugApplication
IRemoteDebugApplication
COMメソッド 11
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 3 HRESULT ResumeFromBreakPoint(IRemoteDebugApplicationThread* prptFocus, BREAKRESUMEACTION bra, ERRORRESUMEACTION era)
| prptFocus | IRemoteDebugApplicationThread* | in | 実行再開時にフォーカスを与えるスレッド IRemoteDebugApplicationThread へのポインタである。 |
| bra | BREAKRESUMEACTION | in | ブレークからの再開方法を示す BREAKRESUMEACTION 列挙値である。 |
| era | ERRORRESUMEACTION | in | エラー発生時の再開方法を示す ERRORRESUMEACTION 列挙値である。 |
vtbl 4 HRESULT CauseBreak()
vtbl 5 HRESULT ConnectDebugger(IApplicationDebugger* pad)
| pad | IApplicationDebugger* | in | このアプリケーションに接続するデバッガ IApplicationDebugger へのポインタである。 |
vtbl 6 HRESULT DisconnectDebugger()
vtbl 7 HRESULT GetDebugger(IApplicationDebugger** pad)
| pad | IApplicationDebugger** | out | 現在接続されているデバッガ IApplicationDebugger を受け取る出力ポインタである。 |
vtbl 8 HRESULT CreateInstanceAtApplication(GUID* rclsid, IUnknown* pUnkOuter, DWORD dwClsContext, GUID* riid, IUnknown** ppvObject)
| rclsid | GUID* | in | アプリケーションのプロセス内で生成するオブジェクトの CLSID(GUID)へのポインタである。 |
| pUnkOuter | IUnknown* | in | アグリゲーションを行う場合の制御 IUnknown へのポインタである。アグリゲートしない場合は NULL。 |
| dwClsContext | DWORD | in | オブジェクト生成時に使用する CLSCTX 実行コンテキストである。 |
| riid | GUID* | in | 取得するインターフェイスの GUID へのポインタである。 |
| ppvObject | IUnknown** | out | 生成されたオブジェクトのインターフェイスポインタを受け取る出力ポインタである。 |
vtbl 9 HRESULT QueryAlive()
vtbl 10 HRESULT EnumThreads(IEnumRemoteDebugApplicationThreads** pperdat)
| pperdat | IEnumRemoteDebugApplicationThreads** | out | このアプリケーションのスレッドを列挙する IEnumRemoteDebugApplicationThreads を受け取る出力ポインタである。 |
| pbstrName | LPWSTR* | out | このアプリケーションの名前を表す文字列を受け取る出力ポインタである。 |
vtbl 12 HRESULT GetRootNode(IDebugApplicationNode** ppdanRoot)
| ppdanRoot | IDebugApplicationNode** | out | このアプリケーションのドキュメントツリーのルート IDebugApplicationNode を受け取る出力ポインタである。 |
vtbl 13 HRESULT EnumGlobalExpressionContexts(IEnumDebugExpressionContexts** ppedec)
| ppedec | IEnumDebugExpressionContexts** | out | グローバルな式評価コンテキストを列挙する IEnumDebugExpressionContexts を受け取る出力ポインタである。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IRemoteDebugApplication "{51973C30-CB0C-11D0-B5C9-00A0244A0E7A}" #usecom global IRemoteDebugApplication IID_IRemoteDebugApplication "{}" #comfunc global IRemoteDebugApplication_ResumeFromBreakPoint 3 sptr,int,int #comfunc global IRemoteDebugApplication_CauseBreak 4 #comfunc global IRemoteDebugApplication_ConnectDebugger 5 sptr #comfunc global IRemoteDebugApplication_DisconnectDebugger 6 #comfunc global IRemoteDebugApplication_GetDebugger 7 sptr #comfunc global IRemoteDebugApplication_CreateInstanceAtApplication 8 var,sptr,int,var,sptr #comfunc global IRemoteDebugApplication_QueryAlive 9 #comfunc global IRemoteDebugApplication_EnumThreads 10 sptr #comfunc global IRemoteDebugApplication_GetName 11 var #comfunc global IRemoteDebugApplication_GetRootNode 12 sptr #comfunc global IRemoteDebugApplication_EnumGlobalExpressionContexts 13 sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IRemoteDebugApplication "{51973C30-CB0C-11D0-B5C9-00A0244A0E7A}" #usecom global IRemoteDebugApplication IID_IRemoteDebugApplication "{}" #comfunc global IRemoteDebugApplication_ResumeFromBreakPoint 3 sptr,int,int #comfunc global IRemoteDebugApplication_CauseBreak 4 #comfunc global IRemoteDebugApplication_ConnectDebugger 5 sptr #comfunc global IRemoteDebugApplication_DisconnectDebugger 6 #comfunc global IRemoteDebugApplication_GetDebugger 7 sptr #comfunc global IRemoteDebugApplication_CreateInstanceAtApplication 8 sptr,sptr,int,sptr,sptr #comfunc global IRemoteDebugApplication_QueryAlive 9 #comfunc global IRemoteDebugApplication_EnumThreads 10 sptr #comfunc global IRemoteDebugApplication_GetName 11 sptr #comfunc global IRemoteDebugApplication_GetRootNode 12 sptr #comfunc global IRemoteDebugApplication_EnumGlobalExpressionContexts 13 sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。