ホーム › System.Diagnostics.Debug.Extensions › IDebugClient3
IDebugClient3
COMメソッド 57
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
| Flags | DWORD | in | カーネルへの接続方法を制御する DEBUG_ATTACH_* フラグを指定する。 |
| ConnectOptions | LPSTR | inoptional | カーネル接続のオプション文字列を指定する。ローカルカーネルの場合は NULL を指定する。 |
| Buffer | LPSTR | outoptional | カーネル接続のオプション文字列を受け取るバッファへのポインタである。 |
| BufferSize | DWORD | in | Buffer のサイズを文字数単位で指定する。 |
| OptionsSize | DWORD* | outoptional | オプション文字列の格納に必要な文字数を受け取るポインタである。 |
| Options | LPSTR | in | カーネル接続のオプション文字列を指定する。 |
| Flags | DWORD | in | プロセスサーバーが扱うデバッグ対象の種類を表すフラグを指定する。 |
| Options | LPSTR | in | プロセスサーバーの接続オプション文字列を指定する。 |
| Reserved | void* | inoptional | 予約済み。NULL を指定する。 |
| RemoteOptions | LPSTR | in | 接続先プロセスサーバーのオプション文字列を指定する。 |
| Server | ULONGLONG* | out | 接続したプロセスサーバーを識別するハンドルを受け取るポインタである。 |
| Server | ULONGLONG | in | 切断するプロセスサーバーのハンドルを指定する。 |
vtbl 9 HRESULT GetRunningProcessSystemIds(ULONGLONG Server, DWORD* Ids, DWORD Count, DWORD* ActualCount)
| Server | ULONGLONG | in | 対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。 |
| Ids | DWORD* | outoptional | 実行中プロセスのシステム ID を受け取る配列へのポインタである。 |
| Count | DWORD | in | Ids 配列の容量 (要素数) を指定する。 |
| ActualCount | DWORD* | outoptional | 実際に取得されたプロセス数を受け取るポインタである。 |
vtbl 10 HRESULT GetRunningProcessSystemIdByExecutableName(ULONGLONG Server, LPSTR ExeName, DWORD Flags, DWORD* Id)
| Server | ULONGLONG | in | 対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。 |
| ExeName | LPSTR | in | 検索する実行可能ファイル名を指定する。 |
| Flags | DWORD | in | 検索方法を制御する DEBUG_GET_PROC_* フラグを指定する。 |
| Id | DWORD* | out | 見つかったプロセスのシステム ID を受け取るポインタである。 |
vtbl 11 HRESULT GetRunningProcessDescription(ULONGLONG Server, DWORD SystemId, DWORD Flags, LPSTR ExeName, DWORD ExeNameSize, DWORD* ActualExeNameSize, LPSTR Description, DWORD DescriptionSize, DWORD* ActualDescriptionSize)
| Server | ULONGLONG | in | 対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。 |
| SystemId | DWORD | in | 対象プロセスのシステム ID を指定する。 |
| Flags | DWORD | in | 取得する記述の内容を制御する DEBUG_PROC_DESC_* フラグを指定する。 |
| ExeName | LPSTR | outoptional | プロセスの実行可能ファイル名を受け取るバッファへのポインタである。 |
| ExeNameSize | DWORD | in | ExeName バッファのサイズを文字数単位で指定する。 |
| ActualExeNameSize | DWORD* | outoptional | 実行可能ファイル名の格納に必要な文字数を受け取るポインタである。 |
| Description | LPSTR | outoptional | プロセスの説明文字列を受け取るバッファへのポインタである。 |
| DescriptionSize | DWORD | in | Description バッファのサイズを文字数単位で指定する。 |
| ActualDescriptionSize | DWORD* | outoptional | 説明文字列の格納に必要な文字数を受け取るポインタである。 |
| Server | ULONGLONG | in | 対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。 |
| ProcessId | DWORD | in | アタッチする対象プロセスのシステム ID を指定する。 |
| AttachFlags | DWORD | in | アタッチ方法を制御する DEBUG_ATTACH_* フラグを指定する。 |
| Server | ULONGLONG | in | 対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。 |
| CommandLine | LPSTR | in | 起動する実行可能ファイルのコマンドラインを指定する。 |
| CreateFlags | DWORD | in | プロセス生成方法を制御する DEBUG_CREATE_PROCESS / DEBUG_PROCESS フラグを指定する。 |
vtbl 14 HRESULT CreateProcessAndAttach(ULONGLONG Server, LPSTR CommandLine, DWORD CreateFlags, DWORD ProcessId, DWORD AttachFlags)
| Server | ULONGLONG | in | 対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。 |
| CommandLine | LPSTR | inoptional | 起動する実行可能ファイルのコマンドラインを指定する。アタッチのみ行う場合は NULL を指定する。 |
| CreateFlags | DWORD | in | プロセス生成方法を制御する DEBUG_CREATE_PROCESS / DEBUG_PROCESS フラグを指定する。 |
| ProcessId | DWORD | in | アタッチする既存プロセスのシステム ID を指定する。新規生成のみなら 0 を指定する。 |
| AttachFlags | DWORD | in | アタッチ方法を制御する DEBUG_ATTACH_* フラグを指定する。 |
| Options | DWORD* | out | 現在のプロセスオプション (DEBUG_PROCESS_*) を受け取るポインタである。 |
| Options | DWORD | in | 追加するプロセスオプション (DEBUG_PROCESS_*) を指定する。 |
| Options | DWORD | in | 取り除くプロセスオプション (DEBUG_PROCESS_*) を指定する。 |
| Options | DWORD | in | 設定するプロセスオプション (DEBUG_PROCESS_*) を指定する。 |
| DumpFile | LPSTR | in | 開くダンプファイルのパスを指定する。 |
| DumpFile | LPSTR | in | 書き出すダンプファイルのパスを指定する。 |
| Qualifier | DWORD | in | 作成するダンプの種類を表す DEBUG_DUMP_* 値を指定する。 |
| Flags | DWORD | in | セッション接続方法を制御する DEBUG_CONNECT_SESSION_* フラグを指定する。 |
| HistoryLimit | DWORD | in | 接続時に表示する出力履歴の最大文字数を指定する。 |
| Options | LPSTR | in | デバッグサーバーの接続オプション文字列を指定する。 |
| OutputControl | DWORD | in | 出力先を制御する DEBUG_OUTCTL_* 値を指定する。 |
| Machine | LPSTR | in | サーバー一覧を取得する対象マシン名を指定する。 |
| Flags | DWORD | in | 出力内容を制御する DEBUG_SERVERS_* フラグを指定する。 |
vtbl 24 HRESULT TerminateProcesses()
vtbl 25 HRESULT DetachProcesses()
| Flags | DWORD | in | セッション終了方法を制御する DEBUG_END_* フラグを指定する。 |
| Code | DWORD* | out | デバッグ対象プロセスの終了コードを受け取るポインタである。 |
| Timeout | DWORD | in | コールバック処理を待機する最大時間をミリ秒単位で指定する。INFINITE を指定すると無期限に待機する。 |
vtbl 29 HRESULT ExitDispatch(IDebugClient* Client)
| Client | IDebugClient* | in | DispatchCallbacks を終了させる対象クライアントの IDebugClient を指定する。 |
vtbl 30 HRESULT CreateClient(IDebugClient** Client)
| Client | IDebugClient** | out | 新しく生成された IDebugClient インターフェイスを受け取るポインタである。 |
vtbl 31 HRESULT GetInputCallbacks(IDebugInputCallbacks** Callbacks)
| Callbacks | IDebugInputCallbacks** | out | 現在設定されている入力コールバック (IDebugInputCallbacks) を受け取るポインタである。 |
vtbl 32 HRESULT SetInputCallbacks(IDebugInputCallbacks* Callbacks)
| Callbacks | IDebugInputCallbacks* | inoptional | 設定する入力コールバック (IDebugInputCallbacks) を指定する。解除する場合は NULL を指定する。 |
vtbl 33 HRESULT GetOutputCallbacks(IDebugOutputCallbacks** Callbacks)
| Callbacks | IDebugOutputCallbacks** | out | 現在設定されている出力コールバック (IDebugOutputCallbacks) を受け取るポインタである。 |
vtbl 34 HRESULT SetOutputCallbacks(IDebugOutputCallbacks* Callbacks)
| Callbacks | IDebugOutputCallbacks* | inoptional | 設定する出力コールバック (IDebugOutputCallbacks) を指定する。解除する場合は NULL を指定する。 |
| Mask | DWORD* | out | 現在の出力マスク (DEBUG_OUTPUT_*) を受け取るポインタである。 |
| Mask | DWORD | in | 設定する出力マスク (DEBUG_OUTPUT_*) を指定する。 |
vtbl 37 HRESULT GetOtherOutputMask(IDebugClient* Client, DWORD* Mask)
| Client | IDebugClient* | in | 出力マスクを取得する対象クライアントの IDebugClient を指定する。 |
| Mask | DWORD* | out | 対象クライアントの出力マスク (DEBUG_OUTPUT_*) を受け取るポインタである。 |
vtbl 38 HRESULT SetOtherOutputMask(IDebugClient* Client, DWORD Mask)
| Client | IDebugClient* | in | 出力マスクを設定する対象クライアントの IDebugClient を指定する。 |
| Mask | DWORD | in | 設定する出力マスク (DEBUG_OUTPUT_*) を指定する。 |
| Columns | DWORD* | out | 出力の折り返し幅 (桁数) を受け取るポインタである。 |
| Columns | DWORD | in | 出力の折り返し幅 (桁数) を指定する。 |
| Buffer | LPSTR | outoptional | 出力行の接頭辞文字列を受け取るバッファへのポインタである。 |
| BufferSize | DWORD | in | Buffer のサイズを文字数単位で指定する。 |
| PrefixSize | DWORD* | outoptional | 接頭辞文字列の格納に必要な文字数を受け取るポインタである。 |
| Prefix | LPSTR | inoptional | 出力行に付加する接頭辞文字列を指定する。解除する場合は NULL を指定する。 |
| Buffer | LPSTR | outoptional | クライアントの識別文字列を受け取るバッファへのポインタである。 |
| BufferSize | DWORD | in | Buffer のサイズを文字数単位で指定する。 |
| IdentitySize | DWORD* | outoptional | 識別文字列の格納に必要な文字数を受け取るポインタである。 |
| OutputControl | DWORD | in | 出力先を制御する DEBUG_OUTCTL_* 値を指定する。 |
| Flags | DWORD | in | 出力内容を制御するフラグを指定する。通常は 0 を指定する。 |
| Format | LPSTR | in | 識別文字列を埋め込む書式文字列を指定する。 |
vtbl 45 HRESULT GetEventCallbacks(IDebugEventCallbacks** Callbacks)
| Callbacks | IDebugEventCallbacks** | out | 現在設定されているイベントコールバック (IDebugEventCallbacks) を受け取るポインタである。 |
vtbl 46 HRESULT SetEventCallbacks(IDebugEventCallbacks* Callbacks)
| Callbacks | IDebugEventCallbacks* | inoptional | 設定するイベントコールバック (IDebugEventCallbacks) を指定する。解除する場合は NULL を指定する。 |
vtbl 47 HRESULT FlushCallbacks()
| DumpFile | LPSTR | in | 書き出すダンプファイルのパスを指定する。 |
| Qualifier | DWORD | in | 作成するダンプの種類を表す DEBUG_DUMP_* 値を指定する。 |
| FormatFlags | DWORD | in | ダンプ形式を制御する DEBUG_FORMAT_* フラグを指定する。 |
| Comment | LPSTR | inoptional | ダンプに埋め込むコメント文字列を指定する。不要なら NULL を指定する。 |
| InfoFile | LPSTR | in | 追加するダンプ情報ファイル (ページングファイル等) のパスを指定する。 |
| Type | DWORD | in | ダンプ情報ファイルの種類を表す DEBUG_DUMP_FILE_* 値を指定する。 |
| Server | ULONGLONG | in | 終了させるプロセスサーバーのハンドルを指定する。 |
| Timeout | DWORD | in | プロセスサーバーの終了を待機する最大時間をミリ秒単位で指定する。 |
vtbl 52 HRESULT IsKernelDebuggerEnabled()
vtbl 53 HRESULT TerminateCurrentProcess()
vtbl 54 HRESULT DetachCurrentProcess()
vtbl 55 HRESULT AbandonCurrentProcess()
vtbl 56 HRESULT GetRunningProcessSystemIdByExecutableNameWide(ULONGLONG Server, LPWSTR ExeName, DWORD Flags, DWORD* Id)
| Server | ULONGLONG | in | 対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。 |
| ExeName | LPWSTR | in | 検索する実行可能ファイル名を指定する。 |
| Flags | DWORD | in | 検索方法を制御する DEBUG_GET_PROC_* フラグを指定する。 |
| Id | DWORD* | out | 見つかったプロセスのシステム ID を受け取るポインタである。 |
vtbl 57 HRESULT GetRunningProcessDescriptionWide(ULONGLONG Server, DWORD SystemId, DWORD Flags, LPWSTR ExeName, DWORD ExeNameSize, DWORD* ActualExeNameSize, LPWSTR Description, DWORD DescriptionSize, DWORD* ActualDescriptionSize)
| Server | ULONGLONG | in | 対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。 |
| SystemId | DWORD | in | 対象プロセスのシステム ID を指定する。 |
| Flags | DWORD | in | 取得する記述の内容を制御する DEBUG_PROC_DESC_* フラグを指定する。 |
| ExeName | LPWSTR | outoptional | プロセスの実行可能ファイル名を受け取るバッファへのポインタである。 |
| ExeNameSize | DWORD | in | ExeName バッファのサイズを文字数単位で指定する。 |
| ActualExeNameSize | DWORD* | outoptional | 実行可能ファイル名の格納に必要な文字数を受け取るポインタである。 |
| Description | LPWSTR | outoptional | プロセスの説明文字列を受け取るバッファへのポインタである。 |
| DescriptionSize | DWORD | in | Description バッファのサイズを文字数単位で指定する。 |
| ActualDescriptionSize | DWORD* | outoptional | 説明文字列の格納に必要な文字数を受け取るポインタである。 |
| Server | ULONGLONG | in | 対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。 |
| CommandLine | LPWSTR | in | 起動する実行可能ファイルのコマンドラインを指定する。 |
| CreateFlags | DWORD | in | プロセス生成方法を制御する DEBUG_CREATE_PROCESS / DEBUG_PROCESS フラグを指定する。 |
vtbl 59 HRESULT CreateProcessAndAttachWide(ULONGLONG Server, LPWSTR CommandLine, DWORD CreateFlags, DWORD ProcessId, DWORD AttachFlags)
| Server | ULONGLONG | in | 対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。 |
| CommandLine | LPWSTR | inoptional | 起動する実行可能ファイルのコマンドラインを指定する。アタッチのみ行う場合は NULL を指定する。 |
| CreateFlags | DWORD | in | プロセス生成方法を制御する DEBUG_CREATE_PROCESS / DEBUG_PROCESS フラグを指定する。 |
| ProcessId | DWORD | in | アタッチする既存プロセスのシステム ID を指定する。新規生成のみなら 0 を指定する。 |
| AttachFlags | DWORD | in | アタッチ方法を制御する DEBUG_ATTACH_* フラグを指定する。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IDebugClient3 "{DD492D7F-71B8-4AD6-A8DC-1C887479FF91}" #usecom global IDebugClient3 IID_IDebugClient3 "{}" #comfunc global IDebugClient3_AttachKernel 3 int,str #comfunc global IDebugClient3_GetKernelConnectionOptions 4 var,int,var #comfunc global IDebugClient3_SetKernelConnectionOptions 5 str #comfunc global IDebugClient3_StartProcessServer 6 int,str,sptr #comfunc global IDebugClient3_ConnectProcessServer 7 str,var #comfunc global IDebugClient3_DisconnectProcessServer 8 int64 #comfunc global IDebugClient3_GetRunningProcessSystemIds 9 int64,var,int,var #comfunc global IDebugClient3_GetRunningProcessSystemIdByExecutableName 10 int64,str,int,var #comfunc global IDebugClient3_GetRunningProcessDescription 11 int64,int,int,var,int,var,var,int,var #comfunc global IDebugClient3_AttachProcess 12 int64,int,int #comfunc global IDebugClient3_CreateProcessA 13 int64,str,int #comfunc global IDebugClient3_CreateProcessAndAttach 14 int64,str,int,int,int #comfunc global IDebugClient3_GetProcessOptions 15 var #comfunc global IDebugClient3_AddProcessOptions 16 int #comfunc global IDebugClient3_RemoveProcessOptions 17 int #comfunc global IDebugClient3_SetProcessOptions 18 int #comfunc global IDebugClient3_OpenDumpFile 19 str #comfunc global IDebugClient3_WriteDumpFile 20 str,int #comfunc global IDebugClient3_ConnectSession 21 int,int #comfunc global IDebugClient3_StartServer 22 str #comfunc global IDebugClient3_OutputServers 23 int,str,int #comfunc global IDebugClient3_TerminateProcesses 24 #comfunc global IDebugClient3_DetachProcesses 25 #comfunc global IDebugClient3_EndSession 26 int #comfunc global IDebugClient3_GetExitCode 27 var #comfunc global IDebugClient3_DispatchCallbacks 28 int #comfunc global IDebugClient3_ExitDispatch 29 sptr #comfunc global IDebugClient3_CreateClient 30 sptr #comfunc global IDebugClient3_GetInputCallbacks 31 sptr #comfunc global IDebugClient3_SetInputCallbacks 32 sptr #comfunc global IDebugClient3_GetOutputCallbacks 33 sptr #comfunc global IDebugClient3_SetOutputCallbacks 34 sptr #comfunc global IDebugClient3_GetOutputMask 35 var #comfunc global IDebugClient3_SetOutputMask 36 int #comfunc global IDebugClient3_GetOtherOutputMask 37 sptr,var #comfunc global IDebugClient3_SetOtherOutputMask 38 sptr,int #comfunc global IDebugClient3_GetOutputWidth 39 var #comfunc global IDebugClient3_SetOutputWidth 40 int #comfunc global IDebugClient3_GetOutputLinePrefix 41 var,int,var #comfunc global IDebugClient3_SetOutputLinePrefix 42 str #comfunc global IDebugClient3_GetIdentity 43 var,int,var #comfunc global IDebugClient3_OutputIdentity 44 int,int,str #comfunc global IDebugClient3_GetEventCallbacks 45 sptr #comfunc global IDebugClient3_SetEventCallbacks 46 sptr #comfunc global IDebugClient3_FlushCallbacks 47 #comfunc global IDebugClient3_WriteDumpFile2 48 str,int,int,str #comfunc global IDebugClient3_AddDumpInformationFile 49 str,int #comfunc global IDebugClient3_EndProcessServer 50 int64 #comfunc global IDebugClient3_WaitForProcessServerEnd 51 int #comfunc global IDebugClient3_IsKernelDebuggerEnabled 52 #comfunc global IDebugClient3_TerminateCurrentProcess 53 #comfunc global IDebugClient3_DetachCurrentProcess 54 #comfunc global IDebugClient3_AbandonCurrentProcess 55 #comfunc global IDebugClient3_GetRunningProcessSystemIdByExecutableNameWide 56 int64,wstr,int,var #comfunc global IDebugClient3_GetRunningProcessDescriptionWide 57 int64,int,int,var,int,var,var,int,var #comfunc global IDebugClient3_CreateProcessWide 58 int64,wstr,int #comfunc global IDebugClient3_CreateProcessAndAttachWide 59 int64,wstr,int,int,int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IDebugClient3 "{DD492D7F-71B8-4AD6-A8DC-1C887479FF91}" #usecom global IDebugClient3 IID_IDebugClient3 "{}" #comfunc global IDebugClient3_AttachKernel 3 int,str #comfunc global IDebugClient3_GetKernelConnectionOptions 4 sptr,int,sptr #comfunc global IDebugClient3_SetKernelConnectionOptions 5 str #comfunc global IDebugClient3_StartProcessServer 6 int,str,sptr #comfunc global IDebugClient3_ConnectProcessServer 7 str,sptr #comfunc global IDebugClient3_DisconnectProcessServer 8 int64 #comfunc global IDebugClient3_GetRunningProcessSystemIds 9 int64,sptr,int,sptr #comfunc global IDebugClient3_GetRunningProcessSystemIdByExecutableName 10 int64,str,int,sptr #comfunc global IDebugClient3_GetRunningProcessDescription 11 int64,int,int,sptr,int,sptr,sptr,int,sptr #comfunc global IDebugClient3_AttachProcess 12 int64,int,int #comfunc global IDebugClient3_CreateProcessA 13 int64,str,int #comfunc global IDebugClient3_CreateProcessAndAttach 14 int64,str,int,int,int #comfunc global IDebugClient3_GetProcessOptions 15 sptr #comfunc global IDebugClient3_AddProcessOptions 16 int #comfunc global IDebugClient3_RemoveProcessOptions 17 int #comfunc global IDebugClient3_SetProcessOptions 18 int #comfunc global IDebugClient3_OpenDumpFile 19 str #comfunc global IDebugClient3_WriteDumpFile 20 str,int #comfunc global IDebugClient3_ConnectSession 21 int,int #comfunc global IDebugClient3_StartServer 22 str #comfunc global IDebugClient3_OutputServers 23 int,str,int #comfunc global IDebugClient3_TerminateProcesses 24 #comfunc global IDebugClient3_DetachProcesses 25 #comfunc global IDebugClient3_EndSession 26 int #comfunc global IDebugClient3_GetExitCode 27 sptr #comfunc global IDebugClient3_DispatchCallbacks 28 int #comfunc global IDebugClient3_ExitDispatch 29 sptr #comfunc global IDebugClient3_CreateClient 30 sptr #comfunc global IDebugClient3_GetInputCallbacks 31 sptr #comfunc global IDebugClient3_SetInputCallbacks 32 sptr #comfunc global IDebugClient3_GetOutputCallbacks 33 sptr #comfunc global IDebugClient3_SetOutputCallbacks 34 sptr #comfunc global IDebugClient3_GetOutputMask 35 sptr #comfunc global IDebugClient3_SetOutputMask 36 int #comfunc global IDebugClient3_GetOtherOutputMask 37 sptr,sptr #comfunc global IDebugClient3_SetOtherOutputMask 38 sptr,int #comfunc global IDebugClient3_GetOutputWidth 39 sptr #comfunc global IDebugClient3_SetOutputWidth 40 int #comfunc global IDebugClient3_GetOutputLinePrefix 41 sptr,int,sptr #comfunc global IDebugClient3_SetOutputLinePrefix 42 str #comfunc global IDebugClient3_GetIdentity 43 sptr,int,sptr #comfunc global IDebugClient3_OutputIdentity 44 int,int,str #comfunc global IDebugClient3_GetEventCallbacks 45 sptr #comfunc global IDebugClient3_SetEventCallbacks 46 sptr #comfunc global IDebugClient3_FlushCallbacks 47 #comfunc global IDebugClient3_WriteDumpFile2 48 str,int,int,str #comfunc global IDebugClient3_AddDumpInformationFile 49 str,int #comfunc global IDebugClient3_EndProcessServer 50 int64 #comfunc global IDebugClient3_WaitForProcessServerEnd 51 int #comfunc global IDebugClient3_IsKernelDebuggerEnabled 52 #comfunc global IDebugClient3_TerminateCurrentProcess 53 #comfunc global IDebugClient3_DetachCurrentProcess 54 #comfunc global IDebugClient3_AbandonCurrentProcess 55 #comfunc global IDebugClient3_GetRunningProcessSystemIdByExecutableNameWide 56 int64,wstr,int,sptr #comfunc global IDebugClient3_GetRunningProcessDescriptionWide 57 int64,int,int,sptr,int,sptr,sptr,int,sptr #comfunc global IDebugClient3_CreateProcessWide 58 int64,wstr,int #comfunc global IDebugClient3_CreateProcessAndAttachWide 59 int64,wstr,int,int,int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。