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

IDebugClient8

COM
IIDcec43add-6375-469e-83d5-414e4033c19a継承元IUnknown自前メソッド開始 vtbl3

メソッド 95

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

vtbl 3 HRESULT AttachKernel(DWORD Flags, LPSTR ConnectOptions)
FlagsDWORDinカーネルへの接続方法を制御する DEBUG_ATTACH_* フラグを指定する。
ConnectOptionsLPSTRinoptionalカーネル接続のオプション文字列を指定する。ローカルカーネルの場合は NULL を指定する。
vtbl 4 HRESULT GetKernelConnectionOptions(LPSTR Buffer, DWORD BufferSize, DWORD* OptionsSize)
BufferLPSTRoutoptionalカーネル接続のオプション文字列を受け取るバッファへのポインタである。
BufferSizeDWORDinBuffer のサイズを文字数単位で指定する。
OptionsSizeDWORD*outoptionalオプション文字列の格納に必要な文字数を受け取るポインタである。
vtbl 5 HRESULT SetKernelConnectionOptions(LPSTR Options)
OptionsLPSTRinカーネル接続のオプション文字列を指定する。
vtbl 6 HRESULT StartProcessServer(DWORD Flags, LPSTR Options, void* Reserved)
FlagsDWORDinプロセスサーバーが扱うデバッグ対象の種類を表すフラグを指定する。
OptionsLPSTRinプロセスサーバーの接続オプション文字列を指定する。
Reservedvoid*inoptional予約済み。NULL を指定する。
vtbl 7 HRESULT ConnectProcessServer(LPSTR RemoteOptions, ULONGLONG* Server)
RemoteOptionsLPSTRin接続先プロセスサーバーのオプション文字列を指定する。
ServerULONGLONG*out接続したプロセスサーバーを識別するハンドルを受け取るポインタである。
vtbl 8 HRESULT DisconnectProcessServer(ULONGLONG Server)
ServerULONGLONGin切断するプロセスサーバーのハンドルを指定する。
vtbl 9 HRESULT GetRunningProcessSystemIds(ULONGLONG Server, DWORD* Ids, DWORD Count, DWORD* ActualCount)
ServerULONGLONGin対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。
IdsDWORD*outoptional実行中プロセスのシステム ID を受け取る配列へのポインタである。
CountDWORDinIds 配列の容量 (要素数) を指定する。
ActualCountDWORD*outoptional実際に取得されたプロセス数を受け取るポインタである。
vtbl 10 HRESULT GetRunningProcessSystemIdByExecutableName(ULONGLONG Server, LPSTR ExeName, DWORD Flags, DWORD* Id)
ServerULONGLONGin対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。
ExeNameLPSTRin検索する実行可能ファイル名を指定する。
FlagsDWORDin検索方法を制御する DEBUG_GET_PROC_* フラグを指定する。
IdDWORD*out見つかったプロセスのシステム ID を受け取るポインタである。
vtbl 11 HRESULT GetRunningProcessDescription(ULONGLONG Server, DWORD SystemId, DWORD Flags, LPSTR ExeName, DWORD ExeNameSize, DWORD* ActualExeNameSize, LPSTR Description, DWORD DescriptionSize, DWORD* ActualDescriptionSize)
ServerULONGLONGin対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。
SystemIdDWORDin対象プロセスのシステム ID を指定する。
FlagsDWORDin取得する記述の内容を制御する DEBUG_PROC_DESC_* フラグを指定する。
ExeNameLPSTRoutoptionalプロセスの実行可能ファイル名を受け取るバッファへのポインタである。
ExeNameSizeDWORDinExeName バッファのサイズを文字数単位で指定する。
ActualExeNameSizeDWORD*outoptional実行可能ファイル名の格納に必要な文字数を受け取るポインタである。
DescriptionLPSTRoutoptionalプロセスの説明文字列を受け取るバッファへのポインタである。
DescriptionSizeDWORDinDescription バッファのサイズを文字数単位で指定する。
ActualDescriptionSizeDWORD*outoptional説明文字列の格納に必要な文字数を受け取るポインタである。
vtbl 12 HRESULT AttachProcess(ULONGLONG Server, DWORD ProcessId, DWORD AttachFlags)
ServerULONGLONGin対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。
ProcessIdDWORDinアタッチする対象プロセスのシステム ID を指定する。
AttachFlagsDWORDinアタッチ方法を制御する DEBUG_ATTACH_* フラグを指定する。
vtbl 13 HRESULT CreateProcessA(ULONGLONG Server, LPSTR CommandLine, DWORD CreateFlags)
ServerULONGLONGin対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。
CommandLineLPSTRin起動する実行可能ファイルのコマンドラインを指定する。
CreateFlagsDWORDinプロセス生成方法を制御する DEBUG_CREATE_PROCESS / DEBUG_PROCESS フラグを指定する。
vtbl 14 HRESULT CreateProcessAndAttach(ULONGLONG Server, LPSTR CommandLine, DWORD CreateFlags, DWORD ProcessId, DWORD AttachFlags)
ServerULONGLONGin対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。
CommandLineLPSTRinoptional起動する実行可能ファイルのコマンドラインを指定する。アタッチのみ行う場合は NULL を指定する。
CreateFlagsDWORDinプロセス生成方法を制御する DEBUG_CREATE_PROCESS / DEBUG_PROCESS フラグを指定する。
ProcessIdDWORDinアタッチする既存プロセスのシステム ID を指定する。新規生成のみなら 0 を指定する。
AttachFlagsDWORDinアタッチ方法を制御する DEBUG_ATTACH_* フラグを指定する。
vtbl 15 HRESULT GetProcessOptions(DWORD* Options)
OptionsDWORD*out現在のプロセスオプション (DEBUG_PROCESS_*) を受け取るポインタである。
vtbl 16 HRESULT AddProcessOptions(DWORD Options)
OptionsDWORDin追加するプロセスオプション (DEBUG_PROCESS_*) を指定する。
vtbl 17 HRESULT RemoveProcessOptions(DWORD Options)
OptionsDWORDin取り除くプロセスオプション (DEBUG_PROCESS_*) を指定する。
vtbl 18 HRESULT SetProcessOptions(DWORD Options)
OptionsDWORDin設定するプロセスオプション (DEBUG_PROCESS_*) を指定する。
vtbl 19 HRESULT OpenDumpFile(LPSTR DumpFile)
DumpFileLPSTRin開くダンプファイルのパスを指定する。
vtbl 20 HRESULT WriteDumpFile(LPSTR DumpFile, DWORD Qualifier)
DumpFileLPSTRin書き出すダンプファイルのパスを指定する。
QualifierDWORDin作成するダンプの種類を表す DEBUG_DUMP_* 値を指定する。
vtbl 21 HRESULT ConnectSession(DWORD Flags, DWORD HistoryLimit)
FlagsDWORDinセッション接続方法を制御する DEBUG_CONNECT_SESSION_* フラグを指定する。
HistoryLimitDWORDin接続時に表示する出力履歴の最大文字数を指定する。
vtbl 22 HRESULT StartServer(LPSTR Options)
OptionsLPSTRinデバッグサーバーの接続オプション文字列を指定する。
vtbl 23 HRESULT OutputServers(DWORD OutputControl, LPSTR Machine, DWORD Flags)
OutputControlDWORDin出力先を制御する DEBUG_OUTCTL_* 値を指定する。
MachineLPSTRinサーバー一覧を取得する対象マシン名を指定する。
FlagsDWORDin出力内容を制御する DEBUG_SERVERS_* フラグを指定する。
vtbl 24 HRESULT TerminateProcesses()
vtbl 25 HRESULT DetachProcesses()
vtbl 26 HRESULT EndSession(DWORD Flags)
FlagsDWORDinセッション終了方法を制御する DEBUG_END_* フラグを指定する。
vtbl 27 HRESULT GetExitCode(DWORD* Code)
CodeDWORD*outデバッグ対象プロセスの終了コードを受け取るポインタである。
vtbl 28 HRESULT DispatchCallbacks(DWORD Timeout)
TimeoutDWORDinコールバック処理を待機する最大時間をミリ秒単位で指定する。INFINITE を指定すると無期限に待機する。
vtbl 29 HRESULT ExitDispatch(IDebugClient* Client)
ClientIDebugClient*inDispatchCallbacks を終了させる対象クライアントの IDebugClient を指定する。
vtbl 30 HRESULT CreateClient(IDebugClient** Client)
ClientIDebugClient**out新しく生成された IDebugClient インターフェイスを受け取るポインタである。
vtbl 31 HRESULT GetInputCallbacks(IDebugInputCallbacks** Callbacks)
CallbacksIDebugInputCallbacks**out現在設定されている入力コールバック (IDebugInputCallbacks) を受け取るポインタである。
vtbl 32 HRESULT SetInputCallbacks(IDebugInputCallbacks* Callbacks)
CallbacksIDebugInputCallbacks*inoptional設定する入力コールバック (IDebugInputCallbacks) を指定する。解除する場合は NULL を指定する。
vtbl 33 HRESULT GetOutputCallbacks(IDebugOutputCallbacks** Callbacks)
CallbacksIDebugOutputCallbacks**out現在設定されている出力コールバック (IDebugOutputCallbacks) を受け取るポインタである。
vtbl 34 HRESULT SetOutputCallbacks(IDebugOutputCallbacks* Callbacks)
CallbacksIDebugOutputCallbacks*inoptional設定する出力コールバック (IDebugOutputCallbacks) を指定する。解除する場合は NULL を指定する。
vtbl 35 HRESULT GetOutputMask(DWORD* Mask)
MaskDWORD*out現在の出力マスク (DEBUG_OUTPUT_*) を受け取るポインタである。
vtbl 36 HRESULT SetOutputMask(DWORD Mask)
MaskDWORDin設定する出力マスク (DEBUG_OUTPUT_*) を指定する。
vtbl 37 HRESULT GetOtherOutputMask(IDebugClient* Client, DWORD* Mask)
ClientIDebugClient*in出力マスクを取得する対象クライアントの IDebugClient を指定する。
MaskDWORD*out対象クライアントの出力マスク (DEBUG_OUTPUT_*) を受け取るポインタである。
vtbl 38 HRESULT SetOtherOutputMask(IDebugClient* Client, DWORD Mask)
ClientIDebugClient*in出力マスクを設定する対象クライアントの IDebugClient を指定する。
MaskDWORDin設定する出力マスク (DEBUG_OUTPUT_*) を指定する。
vtbl 39 HRESULT GetOutputWidth(DWORD* Columns)
ColumnsDWORD*out出力の折り返し幅 (桁数) を受け取るポインタである。
vtbl 40 HRESULT SetOutputWidth(DWORD Columns)
ColumnsDWORDin出力の折り返し幅 (桁数) を指定する。
vtbl 41 HRESULT GetOutputLinePrefix(LPSTR Buffer, DWORD BufferSize, DWORD* PrefixSize)
BufferLPSTRoutoptional出力行の接頭辞文字列を受け取るバッファへのポインタである。
BufferSizeDWORDinBuffer のサイズを文字数単位で指定する。
PrefixSizeDWORD*outoptional接頭辞文字列の格納に必要な文字数を受け取るポインタである。
vtbl 42 HRESULT SetOutputLinePrefix(LPSTR Prefix)
PrefixLPSTRinoptional出力行に付加する接頭辞文字列を指定する。解除する場合は NULL を指定する。
vtbl 43 HRESULT GetIdentity(LPSTR Buffer, DWORD BufferSize, DWORD* IdentitySize)
BufferLPSTRoutoptionalクライアントの識別文字列を受け取るバッファへのポインタである。
BufferSizeDWORDinBuffer のサイズを文字数単位で指定する。
IdentitySizeDWORD*outoptional識別文字列の格納に必要な文字数を受け取るポインタである。
vtbl 44 HRESULT OutputIdentity(DWORD OutputControl, DWORD Flags, LPSTR Format)
OutputControlDWORDin出力先を制御する DEBUG_OUTCTL_* 値を指定する。
FlagsDWORDin出力内容を制御するフラグを指定する。通常は 0 を指定する。
FormatLPSTRin識別文字列を埋め込む書式文字列を指定する。
vtbl 45 HRESULT GetEventCallbacks(IDebugEventCallbacks** Callbacks)
CallbacksIDebugEventCallbacks**out現在設定されているイベントコールバック (IDebugEventCallbacks) を受け取るポインタである。
vtbl 46 HRESULT SetEventCallbacks(IDebugEventCallbacks* Callbacks)
CallbacksIDebugEventCallbacks*inoptional設定するイベントコールバック (IDebugEventCallbacks) を指定する。解除する場合は NULL を指定する。
vtbl 47 HRESULT FlushCallbacks()
vtbl 48 HRESULT WriteDumpFile2(LPSTR DumpFile, DWORD Qualifier, DWORD FormatFlags, LPSTR Comment)
DumpFileLPSTRin書き出すダンプファイルのパスを指定する。
QualifierDWORDin作成するダンプの種類を表す DEBUG_DUMP_* 値を指定する。
FormatFlagsDWORDinダンプ形式を制御する DEBUG_FORMAT_* フラグを指定する。
CommentLPSTRinoptionalダンプに埋め込むコメント文字列を指定する。不要なら NULL を指定する。
vtbl 49 HRESULT AddDumpInformationFile(LPSTR InfoFile, DWORD Type)
InfoFileLPSTRin追加するダンプ情報ファイル (ページングファイル等) のパスを指定する。
TypeDWORDinダンプ情報ファイルの種類を表す DEBUG_DUMP_FILE_* 値を指定する。
vtbl 50 HRESULT EndProcessServer(ULONGLONG Server)
ServerULONGLONGin終了させるプロセスサーバーのハンドルを指定する。
vtbl 51 HRESULT WaitForProcessServerEnd(DWORD Timeout)
TimeoutDWORDinプロセスサーバーの終了を待機する最大時間をミリ秒単位で指定する。
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)
ServerULONGLONGin対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。
ExeNameLPWSTRin検索する実行可能ファイル名を指定する。
FlagsDWORDin検索方法を制御する DEBUG_GET_PROC_* フラグを指定する。
IdDWORD*out見つかったプロセスのシステム ID を受け取るポインタである。
vtbl 57 HRESULT GetRunningProcessDescriptionWide(ULONGLONG Server, DWORD SystemId, DWORD Flags, LPWSTR ExeName, DWORD ExeNameSize, DWORD* ActualExeNameSize, LPWSTR Description, DWORD DescriptionSize, DWORD* ActualDescriptionSize)
ServerULONGLONGin対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。
SystemIdDWORDin対象プロセスのシステム ID を指定する。
FlagsDWORDin取得する記述の内容を制御する DEBUG_PROC_DESC_* フラグを指定する。
ExeNameLPWSTRoutoptionalプロセスの実行可能ファイル名を受け取るバッファへのポインタである。
ExeNameSizeDWORDinExeName バッファのサイズを文字数単位で指定する。
ActualExeNameSizeDWORD*outoptional実行可能ファイル名の格納に必要な文字数を受け取るポインタである。
DescriptionLPWSTRoutoptionalプロセスの説明文字列を受け取るバッファへのポインタである。
DescriptionSizeDWORDinDescription バッファのサイズを文字数単位で指定する。
ActualDescriptionSizeDWORD*outoptional説明文字列の格納に必要な文字数を受け取るポインタである。
vtbl 58 HRESULT CreateProcessWide(ULONGLONG Server, LPWSTR CommandLine, DWORD CreateFlags)
ServerULONGLONGin対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。
CommandLineLPWSTRin起動する実行可能ファイルのコマンドラインを指定する。
CreateFlagsDWORDinプロセス生成方法を制御する DEBUG_CREATE_PROCESS / DEBUG_PROCESS フラグを指定する。
vtbl 59 HRESULT CreateProcessAndAttachWide(ULONGLONG Server, LPWSTR CommandLine, DWORD CreateFlags, DWORD ProcessId, DWORD AttachFlags)
ServerULONGLONGin対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。
CommandLineLPWSTRinoptional起動する実行可能ファイルのコマンドラインを指定する。アタッチのみ行う場合は NULL を指定する。
CreateFlagsDWORDinプロセス生成方法を制御する DEBUG_CREATE_PROCESS / DEBUG_PROCESS フラグを指定する。
ProcessIdDWORDinアタッチする既存プロセスのシステム ID を指定する。新規生成のみなら 0 を指定する。
AttachFlagsDWORDinアタッチ方法を制御する DEBUG_ATTACH_* フラグを指定する。
vtbl 60 HRESULT OpenDumpFileWide(LPWSTR FileName, ULONGLONG FileHandle)
FileNameLPWSTRinoptional開くダンプファイルのパスを指定する。FileHandle を使う場合は NULL を指定する。
FileHandleULONGLONGin既に開かれているダンプファイルのハンドルを指定する。FileName を使う場合は 0 を指定する。
vtbl 61 HRESULT WriteDumpFileWide(LPWSTR FileName, ULONGLONG FileHandle, DWORD Qualifier, DWORD FormatFlags, LPWSTR Comment)
FileNameLPWSTRinoptional書き出すダンプファイルのパスを指定する。FileHandle を使う場合は NULL を指定する。
FileHandleULONGLONGin書き出し先として既に開かれているファイルのハンドルを指定する。FileName を使う場合は 0 を指定する。
QualifierDWORDin作成するダンプの種類を表す DEBUG_DUMP_* 値を指定する。
FormatFlagsDWORDinダンプ形式を制御する DEBUG_FORMAT_* フラグを指定する。
CommentLPWSTRinoptionalダンプに埋め込むコメント文字列を指定する。不要なら NULL を指定する。
vtbl 62 HRESULT AddDumpInformationFileWide(LPWSTR FileName, ULONGLONG FileHandle, DWORD Type)
FileNameLPWSTRinoptional追加するダンプ情報ファイルのパスを指定する。FileHandle を使う場合は NULL を指定する。
FileHandleULONGLONGin追加するダンプ情報ファイルのハンドルを指定する。FileName を使う場合は 0 を指定する。
TypeDWORDinダンプ情報ファイルの種類を表す DEBUG_DUMP_FILE_* 値を指定する。
vtbl 63 HRESULT GetNumberDumpFiles(DWORD* Number)
NumberDWORD*out現在開かれているダンプファイルの数を受け取るポインタである。
vtbl 64 HRESULT GetDumpFile(DWORD Index, LPSTR Buffer, DWORD BufferSize, DWORD* NameSize, ULONGLONG* Handle, DWORD* Type)
IndexDWORDin取得するダンプファイルのインデックスを指定する。
BufferLPSTRoutoptionalダンプファイルのパスを受け取るバッファへのポインタである。
BufferSizeDWORDinBuffer のサイズを文字数単位で指定する。
NameSizeDWORD*outoptionalパスの格納に必要な文字数を受け取るポインタである。
HandleULONGLONG*outoptionalダンプファイルのハンドルを受け取るポインタである。
TypeDWORD*outダンプファイルの種類を受け取るポインタである。
vtbl 65 HRESULT GetDumpFileWide(DWORD Index, LPWSTR Buffer, DWORD BufferSize, DWORD* NameSize, ULONGLONG* Handle, DWORD* Type)
IndexDWORDin取得するダンプファイルのインデックスを指定する。
BufferLPWSTRoutoptionalダンプファイルのパスを受け取るバッファへのポインタである。
BufferSizeDWORDinBuffer のサイズを文字数単位で指定する。
NameSizeDWORD*outoptionalパスの格納に必要な文字数を受け取るポインタである。
HandleULONGLONG*outoptionalダンプファイルのハンドルを受け取るポインタである。
TypeDWORD*outダンプファイルの種類を受け取るポインタである。
vtbl 66 HRESULT AttachKernelWide(DWORD Flags, LPWSTR ConnectOptions)
FlagsDWORDinカーネルへの接続方法を制御する DEBUG_ATTACH_* フラグを指定する。
ConnectOptionsLPWSTRinoptionalカーネル接続のオプション文字列を指定する。ローカルカーネルの場合は NULL を指定する。
vtbl 67 HRESULT GetKernelConnectionOptionsWide(LPWSTR Buffer, DWORD BufferSize, DWORD* OptionsSize)
BufferLPWSTRoutoptionalカーネル接続のオプション文字列を受け取るバッファへのポインタである。
BufferSizeDWORDinBuffer のサイズを文字数単位で指定する。
OptionsSizeDWORD*outoptionalオプション文字列の格納に必要な文字数を受け取るポインタである。
vtbl 68 HRESULT SetKernelConnectionOptionsWide(LPWSTR Options)
OptionsLPWSTRinカーネル接続のオプション文字列を指定する。
vtbl 69 HRESULT StartProcessServerWide(DWORD Flags, LPWSTR Options, void* Reserved)
FlagsDWORDinプロセスサーバーが扱うデバッグ対象の種類を表すフラグを指定する。
OptionsLPWSTRinプロセスサーバーの接続オプション文字列を指定する。
Reservedvoid*inoptional予約済み。NULL を指定する。
vtbl 70 HRESULT ConnectProcessServerWide(LPWSTR RemoteOptions, ULONGLONG* Server)
RemoteOptionsLPWSTRin接続先プロセスサーバーのオプション文字列を指定する。
ServerULONGLONG*out接続したプロセスサーバーを識別するハンドルを受け取るポインタである。
vtbl 71 HRESULT StartServerWide(LPWSTR Options)
OptionsLPWSTRinデバッグサーバーの接続オプション文字列を指定する。
vtbl 72 HRESULT OutputServersWide(DWORD OutputControl, LPWSTR Machine, DWORD Flags)
OutputControlDWORDin出力先を制御する DEBUG_OUTCTL_* 値を指定する。
MachineLPWSTRinサーバー一覧を取得する対象マシン名を指定する。
FlagsDWORDin出力内容を制御する DEBUG_SERVERS_* フラグを指定する。
vtbl 73 HRESULT GetOutputCallbacksWide(IDebugOutputCallbacksWide** Callbacks)
CallbacksIDebugOutputCallbacksWide**out現在設定されている出力コールバック (IDebugOutputCallbacksWide) を受け取るポインタである。
vtbl 74 HRESULT SetOutputCallbacksWide(IDebugOutputCallbacksWide* Callbacks)
CallbacksIDebugOutputCallbacksWide*in設定する出力コールバック (IDebugOutputCallbacksWide) を指定する。解除する場合は NULL を指定する。
vtbl 75 HRESULT GetOutputLinePrefixWide(LPWSTR Buffer, DWORD BufferSize, DWORD* PrefixSize)
BufferLPWSTRoutoptional出力行の接頭辞文字列を受け取るバッファへのポインタである。
BufferSizeDWORDinBuffer のサイズを文字数単位で指定する。
PrefixSizeDWORD*outoptional接頭辞文字列の格納に必要な文字数を受け取るポインタである。
vtbl 76 HRESULT SetOutputLinePrefixWide(LPWSTR Prefix)
PrefixLPWSTRinoptional出力行に付加する接頭辞文字列を指定する。解除する場合は NULL を指定する。
vtbl 77 HRESULT GetIdentityWide(LPWSTR Buffer, DWORD BufferSize, DWORD* IdentitySize)
BufferLPWSTRoutoptionalクライアントの識別文字列を受け取るバッファへのポインタである。
BufferSizeDWORDinBuffer のサイズを文字数単位で指定する。
IdentitySizeDWORD*outoptional識別文字列の格納に必要な文字数を受け取るポインタである。
vtbl 78 HRESULT OutputIdentityWide(DWORD OutputControl, DWORD Flags, LPWSTR Format)
OutputControlDWORDin出力先を制御する DEBUG_OUTCTL_* 値を指定する。
FlagsDWORDin出力内容を制御するフラグを指定する。通常は 0 を指定する。
FormatLPWSTRin識別文字列を埋め込む書式文字列を指定する。
vtbl 79 HRESULT GetEventCallbacksWide(IDebugEventCallbacksWide** Callbacks)
CallbacksIDebugEventCallbacksWide**out現在設定されているイベントコールバック (IDebugEventCallbacksWide) を受け取るポインタである。
vtbl 80 HRESULT SetEventCallbacksWide(IDebugEventCallbacksWide* Callbacks)
CallbacksIDebugEventCallbacksWide*in設定するイベントコールバック (IDebugEventCallbacksWide) を指定する。解除する場合は NULL を指定する。
vtbl 81 HRESULT CreateProcess2(ULONGLONG Server, LPSTR CommandLine, void* OptionsBuffer, DWORD OptionsBufferSize, LPSTR InitialDirectory, LPSTR Environment)
ServerULONGLONGin対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。
CommandLineLPSTRin起動する実行可能ファイルのコマンドラインを指定する。
OptionsBuffervoid*inプロセス生成オプションを格納した DEBUG_CREATE_PROCESS_OPTIONS 構造体へのポインタである。
OptionsBufferSizeDWORDinOptionsBuffer のサイズをバイト単位で指定する。
InitialDirectoryLPSTRinoptional新規プロセスの初期作業ディレクトリを指定する。既定でよければ NULL を指定する。
EnvironmentLPSTRinoptional新規プロセスに渡す環境ブロックを指定する。継承する場合は NULL を指定する。
vtbl 82 HRESULT CreateProcess2Wide(ULONGLONG Server, LPWSTR CommandLine, void* OptionsBuffer, DWORD OptionsBufferSize, LPWSTR InitialDirectory, LPWSTR Environment)
ServerULONGLONGin対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。
CommandLineLPWSTRin起動する実行可能ファイルのコマンドラインを指定する。
OptionsBuffervoid*inプロセス生成オプションを格納した DEBUG_CREATE_PROCESS_OPTIONS 構造体へのポインタである。
OptionsBufferSizeDWORDinOptionsBuffer のサイズをバイト単位で指定する。
InitialDirectoryLPWSTRinoptional新規プロセスの初期作業ディレクトリを指定する。既定でよければ NULL を指定する。
EnvironmentLPWSTRinoptional新規プロセスに渡す環境ブロックを指定する。継承する場合は NULL を指定する。
vtbl 83 HRESULT CreateProcessAndAttach2(ULONGLONG Server, LPSTR CommandLine, void* OptionsBuffer, DWORD OptionsBufferSize, LPSTR InitialDirectory, LPSTR Environment, DWORD ProcessId, DWORD AttachFlags)
ServerULONGLONGin対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。
CommandLineLPSTRinoptional起動する実行可能ファイルのコマンドラインを指定する。アタッチのみ行う場合は NULL を指定する。
OptionsBuffervoid*inプロセス生成オプションを格納した DEBUG_CREATE_PROCESS_OPTIONS 構造体へのポインタである。
OptionsBufferSizeDWORDinOptionsBuffer のサイズをバイト単位で指定する。
InitialDirectoryLPSTRinoptional新規プロセスの初期作業ディレクトリを指定する。既定でよければ NULL を指定する。
EnvironmentLPSTRinoptional新規プロセスに渡す環境ブロックを指定する。継承する場合は NULL を指定する。
ProcessIdDWORDinアタッチする既存プロセスのシステム ID を指定する。新規生成のみなら 0 を指定する。
AttachFlagsDWORDinアタッチ方法を制御する DEBUG_ATTACH_* フラグを指定する。
vtbl 84 HRESULT CreateProcessAndAttach2Wide(ULONGLONG Server, LPWSTR CommandLine, void* OptionsBuffer, DWORD OptionsBufferSize, LPWSTR InitialDirectory, LPWSTR Environment, DWORD ProcessId, DWORD AttachFlags)
ServerULONGLONGin対象のプロセスサーバーのハンドルを指定する。ローカルの場合は 0 を指定する。
CommandLineLPWSTRinoptional起動する実行可能ファイルのコマンドラインを指定する。アタッチのみ行う場合は NULL を指定する。
OptionsBuffervoid*inプロセス生成オプションを格納した DEBUG_CREATE_PROCESS_OPTIONS 構造体へのポインタである。
OptionsBufferSizeDWORDinOptionsBuffer のサイズをバイト単位で指定する。
InitialDirectoryLPWSTRinoptional新規プロセスの初期作業ディレクトリを指定する。既定でよければ NULL を指定する。
EnvironmentLPWSTRinoptional新規プロセスに渡す環境ブロックを指定する。継承する場合は NULL を指定する。
ProcessIdDWORDinアタッチする既存プロセスのシステム ID を指定する。新規生成のみなら 0 を指定する。
AttachFlagsDWORDinアタッチ方法を制御する DEBUG_ATTACH_* フラグを指定する。
vtbl 85 HRESULT PushOutputLinePrefix(LPSTR NewPrefix, ULONGLONG* Handle)
NewPrefixLPSTRinoptional新たに積む出力行の接頭辞文字列を指定する。
HandleULONGLONG*out積んだ接頭辞を後で取り除くためのハンドルを受け取るポインタである。
vtbl 86 HRESULT PushOutputLinePrefixWide(LPWSTR NewPrefix, ULONGLONG* Handle)
NewPrefixLPWSTRinoptional新たに積む出力行の接頭辞文字列を指定する。
HandleULONGLONG*out積んだ接頭辞を後で取り除くためのハンドルを受け取るポインタである。
vtbl 87 HRESULT PopOutputLinePrefix(ULONGLONG Handle)
HandleULONGLONGin取り除く接頭辞を識別するハンドルを指定する。
vtbl 88 HRESULT GetNumberInputCallbacks(DWORD* Count)
CountDWORD*out登録されている入力コールバックの数を受け取るポインタである。
vtbl 89 HRESULT GetNumberOutputCallbacks(DWORD* Count)
CountDWORD*out登録されている出力コールバックの数を受け取るポインタである。
vtbl 90 HRESULT GetNumberEventCallbacks(DWORD EventFlags, DWORD* Count)
EventFlagsDWORDin数を数える対象イベントの種類を表すフラグを指定する。
CountDWORD*out指定したイベントに関心を持つイベントコールバックの数を受け取るポインタである。
vtbl 91 HRESULT GetQuitLockString(LPSTR Buffer, DWORD BufferSize, DWORD* StringSize)
BufferLPSTRoutoptional終了ロック文字列を受け取るバッファへのポインタである。
BufferSizeDWORDinBuffer のサイズを文字数単位で指定する。
StringSizeDWORD*outoptional文字列の格納に必要な文字数を受け取るポインタである。
vtbl 92 HRESULT SetQuitLockString(LPSTR String)
StringLPSTRin終了をロックするためのパスワード文字列を指定する。
vtbl 93 HRESULT GetQuitLockStringWide(LPWSTR Buffer, DWORD BufferSize, DWORD* StringSize)
BufferLPWSTRoutoptional終了ロック文字列を受け取るバッファへのポインタである。
BufferSizeDWORDinBuffer のサイズを文字数単位で指定する。
StringSizeDWORD*outoptional文字列の格納に必要な文字数を受け取るポインタである。
vtbl 94 HRESULT SetQuitLockStringWide(LPWSTR String)
StringLPWSTRin終了をロックするためのパスワード文字列を指定する。
vtbl 95 HRESULT SetEventContextCallbacks(IDebugEventContextCallbacks* Callbacks)
CallbacksIDebugEventContextCallbacks*inoptional設定するイベントコンテキストコールバック (IDebugEventContextCallbacks) を指定する。解除する場合は NULL を指定する。
vtbl 96 HRESULT SetClientContext(void* Context, DWORD ContextSize)
Contextvoid*inクライアントに関連付けるコンテキストデータへのポインタである。
ContextSizeDWORDinContext のサイズをバイト単位で指定する。
vtbl 97 HRESULT OpenDumpFileWide2(LPWSTR FileName, ULONGLONG FileHandle, DWORD AlternateArch)
FileNameLPWSTRinoptional開くダンプファイルのパスを指定する。FileHandle を使う場合は NULL を指定する。
FileHandleULONGLONGin既に開かれているダンプファイルのハンドルを指定する。FileName を使う場合は 0 を指定する。
AlternateArchDWORDin代替アーキテクチャを指定する。

HSP用 COM定義

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

出力引数:
#define global IID_IDebugClient8 "{CEC43ADD-6375-469E-83D5-414E4033C19A}"
#usecom global IDebugClient8 IID_IDebugClient8 "{}"
#comfunc global IDebugClient8_AttachKernel                                   3 int,str
#comfunc global IDebugClient8_GetKernelConnectionOptions                     4 var,int,var
#comfunc global IDebugClient8_SetKernelConnectionOptions                     5 str
#comfunc global IDebugClient8_StartProcessServer                             6 int,str,sptr
#comfunc global IDebugClient8_ConnectProcessServer                           7 str,var
#comfunc global IDebugClient8_DisconnectProcessServer                        8 int64
#comfunc global IDebugClient8_GetRunningProcessSystemIds                     9 int64,var,int,var
#comfunc global IDebugClient8_GetRunningProcessSystemIdByExecutableName      10 int64,str,int,var
#comfunc global IDebugClient8_GetRunningProcessDescription                   11 int64,int,int,var,int,var,var,int,var
#comfunc global IDebugClient8_AttachProcess                                  12 int64,int,int
#comfunc global IDebugClient8_CreateProcessA                                 13 int64,str,int
#comfunc global IDebugClient8_CreateProcessAndAttach                         14 int64,str,int,int,int
#comfunc global IDebugClient8_GetProcessOptions                              15 var
#comfunc global IDebugClient8_AddProcessOptions                              16 int
#comfunc global IDebugClient8_RemoveProcessOptions                           17 int
#comfunc global IDebugClient8_SetProcessOptions                              18 int
#comfunc global IDebugClient8_OpenDumpFile                                   19 str
#comfunc global IDebugClient8_WriteDumpFile                                  20 str,int
#comfunc global IDebugClient8_ConnectSession                                 21 int,int
#comfunc global IDebugClient8_StartServer                                    22 str
#comfunc global IDebugClient8_OutputServers                                  23 int,str,int
#comfunc global IDebugClient8_TerminateProcesses                             24
#comfunc global IDebugClient8_DetachProcesses                                25
#comfunc global IDebugClient8_EndSession                                     26 int
#comfunc global IDebugClient8_GetExitCode                                    27 var
#comfunc global IDebugClient8_DispatchCallbacks                              28 int
#comfunc global IDebugClient8_ExitDispatch                                   29 sptr
#comfunc global IDebugClient8_CreateClient                                   30 sptr
#comfunc global IDebugClient8_GetInputCallbacks                              31 sptr
#comfunc global IDebugClient8_SetInputCallbacks                              32 sptr
#comfunc global IDebugClient8_GetOutputCallbacks                             33 sptr
#comfunc global IDebugClient8_SetOutputCallbacks                             34 sptr
#comfunc global IDebugClient8_GetOutputMask                                  35 var
#comfunc global IDebugClient8_SetOutputMask                                  36 int
#comfunc global IDebugClient8_GetOtherOutputMask                             37 sptr,var
#comfunc global IDebugClient8_SetOtherOutputMask                             38 sptr,int
#comfunc global IDebugClient8_GetOutputWidth                                 39 var
#comfunc global IDebugClient8_SetOutputWidth                                 40 int
#comfunc global IDebugClient8_GetOutputLinePrefix                            41 var,int,var
#comfunc global IDebugClient8_SetOutputLinePrefix                            42 str
#comfunc global IDebugClient8_GetIdentity                                    43 var,int,var
#comfunc global IDebugClient8_OutputIdentity                                 44 int,int,str
#comfunc global IDebugClient8_GetEventCallbacks                              45 sptr
#comfunc global IDebugClient8_SetEventCallbacks                              46 sptr
#comfunc global IDebugClient8_FlushCallbacks                                 47
#comfunc global IDebugClient8_WriteDumpFile2                                 48 str,int,int,str
#comfunc global IDebugClient8_AddDumpInformationFile                         49 str,int
#comfunc global IDebugClient8_EndProcessServer                               50 int64
#comfunc global IDebugClient8_WaitForProcessServerEnd                        51 int
#comfunc global IDebugClient8_IsKernelDebuggerEnabled                        52
#comfunc global IDebugClient8_TerminateCurrentProcess                        53
#comfunc global IDebugClient8_DetachCurrentProcess                           54
#comfunc global IDebugClient8_AbandonCurrentProcess                          55
#comfunc global IDebugClient8_GetRunningProcessSystemIdByExecutableNameWide  56 int64,wstr,int,var
#comfunc global IDebugClient8_GetRunningProcessDescriptionWide               57 int64,int,int,var,int,var,var,int,var
#comfunc global IDebugClient8_CreateProcessWide                              58 int64,wstr,int
#comfunc global IDebugClient8_CreateProcessAndAttachWide                     59 int64,wstr,int,int,int
#comfunc global IDebugClient8_OpenDumpFileWide                               60 wstr,int64
#comfunc global IDebugClient8_WriteDumpFileWide                              61 wstr,int64,int,int,wstr
#comfunc global IDebugClient8_AddDumpInformationFileWide                     62 wstr,int64,int
#comfunc global IDebugClient8_GetNumberDumpFiles                             63 var
#comfunc global IDebugClient8_GetDumpFile                                    64 int,var,int,var,var,var
#comfunc global IDebugClient8_GetDumpFileWide                                65 int,var,int,var,var,var
#comfunc global IDebugClient8_AttachKernelWide                               66 int,wstr
#comfunc global IDebugClient8_GetKernelConnectionOptionsWide                 67 var,int,var
#comfunc global IDebugClient8_SetKernelConnectionOptionsWide                 68 wstr
#comfunc global IDebugClient8_StartProcessServerWide                         69 int,wstr,sptr
#comfunc global IDebugClient8_ConnectProcessServerWide                       70 wstr,var
#comfunc global IDebugClient8_StartServerWide                                71 wstr
#comfunc global IDebugClient8_OutputServersWide                              72 int,wstr,int
#comfunc global IDebugClient8_GetOutputCallbacksWide                         73 sptr
#comfunc global IDebugClient8_SetOutputCallbacksWide                         74 sptr
#comfunc global IDebugClient8_GetOutputLinePrefixWide                        75 var,int,var
#comfunc global IDebugClient8_SetOutputLinePrefixWide                        76 wstr
#comfunc global IDebugClient8_GetIdentityWide                                77 var,int,var
#comfunc global IDebugClient8_OutputIdentityWide                             78 int,int,wstr
#comfunc global IDebugClient8_GetEventCallbacksWide                          79 sptr
#comfunc global IDebugClient8_SetEventCallbacksWide                          80 sptr
#comfunc global IDebugClient8_CreateProcess2                                 81 int64,str,sptr,int,str,str
#comfunc global IDebugClient8_CreateProcess2Wide                             82 int64,wstr,sptr,int,wstr,wstr
#comfunc global IDebugClient8_CreateProcessAndAttach2                        83 int64,str,sptr,int,str,str,int,int
#comfunc global IDebugClient8_CreateProcessAndAttach2Wide                    84 int64,wstr,sptr,int,wstr,wstr,int,int
#comfunc global IDebugClient8_PushOutputLinePrefix                           85 str,var
#comfunc global IDebugClient8_PushOutputLinePrefixWide                       86 wstr,var
#comfunc global IDebugClient8_PopOutputLinePrefix                            87 int64
#comfunc global IDebugClient8_GetNumberInputCallbacks                        88 var
#comfunc global IDebugClient8_GetNumberOutputCallbacks                       89 var
#comfunc global IDebugClient8_GetNumberEventCallbacks                        90 int,var
#comfunc global IDebugClient8_GetQuitLockString                              91 var,int,var
#comfunc global IDebugClient8_SetQuitLockString                              92 str
#comfunc global IDebugClient8_GetQuitLockStringWide                          93 var,int,var
#comfunc global IDebugClient8_SetQuitLockStringWide                          94 wstr
#comfunc global IDebugClient8_SetEventContextCallbacks                       95 sptr
#comfunc global IDebugClient8_SetClientContext                               96 sptr,int
#comfunc global IDebugClient8_OpenDumpFileWide2                              97 wstr,int64,int
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。