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

IDebugSymbols2

COM
IID3a707211-afdd-4495-ad4f-56fecdf8163f継承元IUnknown自前メソッド開始 vtbl3

メソッド 57

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

vtbl 3 HRESULT GetSymbolOptions(DWORD* Options)
OptionsDWORD*out現在のシンボルオプションのフラグを受け取るポインタである。
vtbl 4 HRESULT AddSymbolOptions(DWORD Options)
OptionsDWORDin追加で有効にするシンボルオプションのフラグを指定する。
vtbl 5 HRESULT RemoveSymbolOptions(DWORD Options)
OptionsDWORDin無効にするシンボルオプションのフラグを指定する。
vtbl 6 HRESULT SetSymbolOptions(DWORD Options)
OptionsDWORDin設定するシンボルオプションのフラグを指定する。
vtbl 7 HRESULT GetNameByOffset(ULONGLONG Offset, LPSTR NameBuffer, DWORD NameBufferSize, DWORD* NameSize, ULONGLONG* Displacement)
OffsetULONGLONGin名前を求める対象の仮想アドレス(オフセット)を指定する。
NameBufferLPSTRoutoptionalシンボル名を受け取るバッファへのポインタである。NULL を指定すると必要なサイズのみを問い合わせできる。
NameBufferSizeDWORDin名前バッファのサイズ(バイト単位)を指定する。
NameSizeDWORD*outoptionalシンボル名のサイズ(バイト単位)を受け取るポインタである。
DisplacementULONGLONG*outoptionalシンボルの先頭から指定アドレスまでの変位(バイト単位)を受け取るポインタである。
vtbl 8 HRESULT GetOffsetByName(LPSTR Symbol, ULONGLONG* Offset)
SymbolLPSTRinアドレスを求めるシンボルの名前を指定する。
OffsetULONGLONG*outシンボルの仮想アドレス(オフセット)を受け取るポインタである。
vtbl 9 HRESULT GetNearNameByOffset(ULONGLONG Offset, INT Delta, LPSTR NameBuffer, DWORD NameBufferSize, DWORD* NameSize, ULONGLONG* Displacement)
OffsetULONGLONGin基準となる仮想アドレス(オフセット)を指定する。
DeltaINTin基準シンボルからの相対位置(前後のシンボル数)を指定する。
NameBufferLPSTRoutoptionalシンボル名を受け取るバッファへのポインタである。NULL を指定すると必要なサイズのみを問い合わせできる。
NameBufferSizeDWORDin名前バッファのサイズ(バイト単位)を指定する。
NameSizeDWORD*outoptionalシンボル名のサイズ(バイト単位)を受け取るポインタである。
DisplacementULONGLONG*outoptionalシンボルの先頭から指定アドレスまでの変位(バイト単位)を受け取るポインタである。
vtbl 10 HRESULT GetLineByOffset(ULONGLONG Offset, DWORD* Line, LPSTR FileBuffer, DWORD FileBufferSize, DWORD* FileSize, ULONGLONG* Displacement)
OffsetULONGLONGin行情報を求める対象の仮想アドレス(オフセット)を指定する。
LineDWORD*outoptionalソース行番号を受け取るポインタである。
FileBufferLPSTRoutoptionalソースファイル名を受け取るバッファへのポインタである。NULL を指定すると必要なサイズのみを問い合わせできる。
FileBufferSizeDWORDinファイル名バッファのサイズ(バイト単位)を指定する。
FileSizeDWORD*outoptionalファイル名のサイズ(バイト単位)を受け取るポインタである。
DisplacementULONGLONG*outoptional行の先頭から指定アドレスまでの変位(バイト単位)を受け取るポインタである。
vtbl 11 HRESULT GetOffsetByLine(DWORD Line, LPSTR File, ULONGLONG* Offset)
LineDWORDin対象とするソース行番号を指定する。
FileLPSTRin対象とするソースファイルの名前を指定する。
OffsetULONGLONG*out指定行に対応する仮想アドレス(オフセット)を受け取るポインタである。
vtbl 12 HRESULT GetNumberModules(DWORD* Loaded, DWORD* Unloaded)
LoadedDWORD*out読み込み済みモジュールの数を受け取るポインタである。
UnloadedDWORD*outアンロード済みモジュールの数を受け取るポインタである。
vtbl 13 HRESULT GetModuleByIndex(DWORD Index, ULONGLONG* Base)
IndexDWORDin対象モジュールのインデックスを指定する。
BaseULONGLONG*outモジュールのベースアドレスを受け取るポインタである。
vtbl 14 HRESULT GetModuleByModuleName(LPSTR Name, DWORD StartIndex, DWORD* Index, ULONGLONG* Base)
NameLPSTRin検索するモジュール名を指定する。
StartIndexDWORDin検索を開始するモジュールのインデックスを指定する。
IndexDWORD*outoptional見つかったモジュールのインデックスを受け取るポインタである。
BaseULONGLONG*outoptional見つかったモジュールのベースアドレスを受け取るポインタである。
vtbl 15 HRESULT GetModuleByOffset(ULONGLONG Offset, DWORD StartIndex, DWORD* Index, ULONGLONG* Base)
OffsetULONGLONGin対象とする仮想アドレス(オフセット)を指定する。
StartIndexDWORDin検索を開始するモジュールのインデックスを指定する。
IndexDWORD*outoptional見つかったモジュールのインデックスを受け取るポインタである。
BaseULONGLONG*outoptional見つかったモジュールのベースアドレスを受け取るポインタである。
vtbl 16 HRESULT GetModuleNames(DWORD Index, ULONGLONG Base, LPSTR ImageNameBuffer, DWORD ImageNameBufferSize, DWORD* ImageNameSize, LPSTR ModuleNameBuffer, DWORD ModuleNameBufferSize, DWORD* ModuleNameSize, LPSTR LoadedImageNameBuffer, DWORD LoadedImageNameBufferSize, DWORD* LoadedImageNameSize)
IndexDWORDin対象モジュールのインデックスを指定する。Base を使う場合は DEBUG_ANY_ID を指定する。
BaseULONGLONGin対象モジュールのベースアドレスを指定する。Index を使う場合は 0 を指定する。
ImageNameBufferLPSTRoutoptionalイメージ名を受け取るバッファへのポインタである。不要なら NULL を指定できる。
ImageNameBufferSizeDWORDin対応するバッファのサイズ(文字数またはバイト単位)を指定する。
ImageNameSizeDWORD*outoptionalイメージ名のサイズ(バイト単位)を受け取るポインタである。
ModuleNameBufferLPSTRoutoptionalモジュール名を受け取るバッファへのポインタである。不要なら NULL を指定できる。
ModuleNameBufferSizeDWORDin対応するバッファのサイズ(文字数またはバイト単位)を指定する。
ModuleNameSizeDWORD*outoptionalモジュール名のサイズ(バイト単位)を受け取るポインタである。
LoadedImageNameBufferLPSTRoutoptional読み込まれたイメージ名を受け取るバッファへのポインタである。不要なら NULL を指定できる。
LoadedImageNameBufferSizeDWORDin対応するバッファのサイズ(文字数またはバイト単位)を指定する。
LoadedImageNameSizeDWORD*outoptional読み込まれたイメージ名のサイズ(バイト単位)を受け取るポインタである。
vtbl 17 HRESULT GetModuleParameters(DWORD Count, ULONGLONG* Bases, DWORD Start, DEBUG_MODULE_PARAMETERS* Params)
CountDWORDin取得するモジュールの個数を指定する。
BasesULONGLONG*inoptional対象モジュールのベースアドレスの配列を指定する。
StartDWORDinBases が NULL のとき取得を開始するモジュールのインデックスを指定する。
ParamsDEBUG_MODULE_PARAMETERS*outモジュールのパラメータを受け取る DEBUG_MODULE_PARAMETERS 構造体配列へのポインタである。
vtbl 18 HRESULT GetSymbolModule(LPSTR Symbol, ULONGLONG* Base)
SymbolLPSTRin対象シンボルの名前を指定する。
BaseULONGLONG*outシンボルを含むモジュールのベースアドレスを受け取るポインタである。
vtbl 19 HRESULT GetTypeName(ULONGLONG Module, DWORD TypeId, LPSTR NameBuffer, DWORD NameBufferSize, DWORD* NameSize)
ModuleULONGLONGin型を含むモジュールのベースアドレスを指定する。
TypeIdDWORDin名前を求める型の型 ID を指定する。
NameBufferLPSTRoutoptional型名を受け取るバッファへのポインタである。NULL を指定すると必要なサイズのみを問い合わせできる。
NameBufferSizeDWORDin名前バッファのサイズ(バイト単位)を指定する。
NameSizeDWORD*outoptional型名のサイズ(バイト単位)を受け取るポインタである。
vtbl 20 HRESULT GetTypeId(ULONGLONG Module, LPSTR Name, DWORD* TypeId)
ModuleULONGLONGin型を含むモジュールのベースアドレスを指定する。
NameLPSTRin型 ID を求める型の名前を指定する。
TypeIdDWORD*out型 ID を受け取るポインタである。
vtbl 21 HRESULT GetTypeSize(ULONGLONG Module, DWORD TypeId, DWORD* Size)
ModuleULONGLONGin型を含むモジュールのベースアドレスを指定する。
TypeIdDWORDinサイズを求める型の型 ID を指定する。
SizeDWORD*out型のサイズ(バイト単位)を受け取るポインタである。
vtbl 22 HRESULT GetFieldOffset(ULONGLONG Module, DWORD TypeId, LPSTR Field, DWORD* Offset)
ModuleULONGLONGin型を含むモジュールのベースアドレスを指定する。
TypeIdDWORDinフィールドを含む構造体型の型 ID を指定する。
FieldLPSTRin対象フィールドの名前を指定する。
OffsetDWORD*outフィールドの構造体先頭からのオフセット(バイト単位)を受け取るポインタである。
vtbl 23 HRESULT GetSymbolTypeId(LPSTR Symbol, DWORD* TypeId, ULONGLONG* Module)
SymbolLPSTRin対象シンボルの名前を指定する。
TypeIdDWORD*outシンボルの型 ID を受け取るポインタである。
ModuleULONGLONG*outoptionalシンボルを含むモジュールのベースアドレスを受け取るポインタである。
vtbl 24 HRESULT GetOffsetTypeId(ULONGLONG Offset, DWORD* TypeId, ULONGLONG* Module)
OffsetULONGLONGin対象とする仮想アドレス(オフセット)を指定する。
TypeIdDWORD*outそのアドレスにあるシンボルの型 ID を受け取るポインタである。
ModuleULONGLONG*outoptionalシンボルを含むモジュールのベースアドレスを受け取るポインタである。
vtbl 25 HRESULT ReadTypedDataVirtual(ULONGLONG Offset, ULONGLONG Module, DWORD TypeId, void* Buffer, DWORD BufferSize, DWORD* BytesRead)
OffsetULONGLONGin読み取る対象の仮想アドレス(オフセット)を指定する。
ModuleULONGLONGinデータの型を含むモジュールのベースアドレスを指定する。
TypeIdDWORDin読み取るデータの型 ID を指定する。
Buffervoid*out読み取ったデータを受け取るバッファへのポインタである。
BufferSizeDWORDinバッファのサイズ(バイト単位)を指定する。
BytesReadDWORD*outoptional実際に読み取られたバイト数を受け取るポインタである。不要なら NULL を指定できる。
vtbl 26 HRESULT WriteTypedDataVirtual(ULONGLONG Offset, ULONGLONG Module, DWORD TypeId, void* Buffer, DWORD BufferSize, DWORD* BytesWritten)
OffsetULONGLONGin書き込む対象の仮想アドレス(オフセット)を指定する。
ModuleULONGLONGinデータの型を含むモジュールのベースアドレスを指定する。
TypeIdDWORDin書き込むデータの型 ID を指定する。
Buffervoid*in書き込むデータが格納されたバッファへのポインタである。
BufferSizeDWORDinバッファのサイズ(バイト単位)を指定する。
BytesWrittenDWORD*outoptional実際に書き込まれたバイト数を受け取るポインタである。不要なら NULL を指定できる。
vtbl 27 HRESULT OutputTypedDataVirtual(DWORD OutputControl, ULONGLONG Offset, ULONGLONG Module, DWORD TypeId, DWORD Flags)
OutputControlDWORDin出力先を指定する出力制御フラグである。
OffsetULONGLONGin出力する対象の仮想アドレス(オフセット)を指定する。
ModuleULONGLONGinデータの型を含むモジュールのベースアドレスを指定する。
TypeIdDWORDin出力するデータの型 ID を指定する。
FlagsDWORDin出力の書式を制御するフラグを指定する。
vtbl 28 HRESULT ReadTypedDataPhysical(ULONGLONG Offset, ULONGLONG Module, DWORD TypeId, void* Buffer, DWORD BufferSize, DWORD* BytesRead)
OffsetULONGLONGin読み取る対象の物理アドレス(オフセット)を指定する。
ModuleULONGLONGinデータの型を含むモジュールのベースアドレスを指定する。
TypeIdDWORDin読み取るデータの型 ID を指定する。
Buffervoid*out読み取ったデータを受け取るバッファへのポインタである。
BufferSizeDWORDinバッファのサイズ(バイト単位)を指定する。
BytesReadDWORD*outoptional実際に読み取られたバイト数を受け取るポインタである。不要なら NULL を指定できる。
vtbl 29 HRESULT WriteTypedDataPhysical(ULONGLONG Offset, ULONGLONG Module, DWORD TypeId, void* Buffer, DWORD BufferSize, DWORD* BytesWritten)
OffsetULONGLONGin書き込む対象の物理アドレス(オフセット)を指定する。
ModuleULONGLONGinデータの型を含むモジュールのベースアドレスを指定する。
TypeIdDWORDin書き込むデータの型 ID を指定する。
Buffervoid*in書き込むデータが格納されたバッファへのポインタである。
BufferSizeDWORDinバッファのサイズ(バイト単位)を指定する。
BytesWrittenDWORD*outoptional実際に書き込まれたバイト数を受け取るポインタである。不要なら NULL を指定できる。
vtbl 30 HRESULT OutputTypedDataPhysical(DWORD OutputControl, ULONGLONG Offset, ULONGLONG Module, DWORD TypeId, DWORD Flags)
OutputControlDWORDin出力先を指定する出力制御フラグである。
OffsetULONGLONGin出力する対象の物理アドレス(オフセット)を指定する。
ModuleULONGLONGinデータの型を含むモジュールのベースアドレスを指定する。
TypeIdDWORDin出力するデータの型 ID を指定する。
FlagsDWORDin出力の書式を制御するフラグを指定する。
vtbl 31 HRESULT GetScope(ULONGLONG* InstructionOffset, DEBUG_STACK_FRAME* ScopeFrame, void* ScopeContext, DWORD ScopeContextSize)
InstructionOffsetULONGLONG*outoptional現在のスコープの命令アドレスを受け取るポインタである。
ScopeFrameDEBUG_STACK_FRAME*outoptional現在のスコープのスタックフレームを受け取る DEBUG_STACK_FRAME 構造体へのポインタである。
ScopeContextvoid*outoptional現在のスコープのレジスタコンテキストを受け取るバッファへのポインタである。
ScopeContextSizeDWORDinコンテキストバッファのサイズ(バイト単位)を指定する。
vtbl 32 HRESULT SetScope(ULONGLONG InstructionOffset, DEBUG_STACK_FRAME* ScopeFrame, void* ScopeContext, DWORD ScopeContextSize)
InstructionOffsetULONGLONGin設定するスコープの命令アドレスを指定する。
ScopeFrameDEBUG_STACK_FRAME*inoptional設定するスコープのスタックフレームを表す DEBUG_STACK_FRAME 構造体へのポインタである。
ScopeContextvoid*inoptional設定するスコープのレジスタコンテキストへのポインタである。
ScopeContextSizeDWORDinコンテキストデータのサイズ(バイト単位)を指定する。
vtbl 33 HRESULT ResetScope()
vtbl 34 HRESULT GetScopeSymbolGroup(DWORD Flags, IDebugSymbolGroup* Update, IDebugSymbolGroup** Symbols)
FlagsDWORDin対象とするシンボルの種類を制御するフラグを指定する。
UpdateIDebugSymbolGroup*inoptional更新して再利用する既存のシンボルグループを指定する。新規作成する場合は NULL を指定する。
SymbolsIDebugSymbolGroup**out生成または更新されたシンボルグループを受け取るポインタである。
vtbl 35 HRESULT CreateSymbolGroup(IDebugSymbolGroup** Group)
GroupIDebugSymbolGroup**out作成されたシンボルグループを受け取るポインタである。
vtbl 36 HRESULT StartSymbolMatch(LPSTR Pattern, ULONGLONG* Handle)
PatternLPSTRin一致させるシンボル名のパターン(ワイルドカード可)を指定する。
HandleULONGLONG*out列挙に用いるハンドルを受け取るポインタである。
vtbl 37 HRESULT GetNextSymbolMatch(ULONGLONG Handle, LPSTR Buffer, DWORD BufferSize, DWORD* MatchSize, ULONGLONG* Offset)
HandleULONGLONGinStartSymbolMatch で取得した列挙ハンドルを指定する。
BufferLPSTRoutoptional一致したシンボル名を受け取るバッファへのポインタである。NULL を指定すると必要なサイズのみを問い合わせできる。
BufferSizeDWORDinバッファのサイズ(バイト単位)を指定する。
MatchSizeDWORD*outoptional一致したシンボル名のサイズ(バイト単位)を受け取るポインタである。
OffsetULONGLONG*outoptional一致したシンボルの仮想アドレス(オフセット)を受け取るポインタである。
vtbl 38 HRESULT EndSymbolMatch(ULONGLONG Handle)
HandleULONGLONGin終了する列挙のハンドルを指定する。
vtbl 39 HRESULT Reload(LPSTR Module)
ModuleLPSTRin再読み込みするモジュールの指定(モジュール名やオプション)を指定する。
vtbl 40 HRESULT GetSymbolPath(LPSTR Buffer, DWORD BufferSize, DWORD* PathSize)
BufferLPSTRoutoptionalシンボルパスを受け取るバッファへのポインタである。NULL を指定すると必要なサイズのみを問い合わせできる。
BufferSizeDWORDinバッファのサイズ(バイト単位)を指定する。
PathSizeDWORD*outoptionalシンボルパスのサイズ(バイト単位)を受け取るポインタである。
vtbl 41 HRESULT SetSymbolPath(LPSTR Path)
PathLPSTRin設定するシンボルパスを指定する。
vtbl 42 HRESULT AppendSymbolPath(LPSTR Addition)
AdditionLPSTRinシンボルパスに追加するパスを指定する。
vtbl 43 HRESULT GetImagePath(LPSTR Buffer, DWORD BufferSize, DWORD* PathSize)
BufferLPSTRoutoptional実行イメージパスを受け取るバッファへのポインタである。NULL を指定すると必要なサイズのみを問い合わせできる。
BufferSizeDWORDinバッファのサイズ(バイト単位)を指定する。
PathSizeDWORD*outoptional実行イメージパスのサイズ(バイト単位)を受け取るポインタである。
vtbl 44 HRESULT SetImagePath(LPSTR Path)
PathLPSTRin設定する実行イメージパスを指定する。
vtbl 45 HRESULT AppendImagePath(LPSTR Addition)
AdditionLPSTRin実行イメージパスに追加するパスを指定する。
vtbl 46 HRESULT GetSourcePath(LPSTR Buffer, DWORD BufferSize, DWORD* PathSize)
BufferLPSTRoutoptionalソースパスを受け取るバッファへのポインタである。NULL を指定すると必要なサイズのみを問い合わせできる。
BufferSizeDWORDinバッファのサイズ(バイト単位)を指定する。
PathSizeDWORD*outoptionalソースパスのサイズ(バイト単位)を受け取るポインタである。
vtbl 47 HRESULT GetSourcePathElement(DWORD Index, LPSTR Buffer, DWORD BufferSize, DWORD* ElementSize)
IndexDWORDin取得するソースパス要素のインデックスを指定する。
BufferLPSTRoutoptionalソースパス要素を受け取るバッファへのポインタである。NULL を指定すると必要なサイズのみを問い合わせできる。
BufferSizeDWORDinバッファのサイズ(バイト単位)を指定する。
ElementSizeDWORD*outoptionalソースパス要素のサイズ(バイト単位)を受け取るポインタである。
vtbl 48 HRESULT SetSourcePath(LPSTR Path)
PathLPSTRin設定するソースパスを指定する。
vtbl 49 HRESULT AppendSourcePath(LPSTR Addition)
AdditionLPSTRinソースパスに追加するパスを指定する。
vtbl 50 HRESULT FindSourceFile(DWORD StartElement, LPSTR File, DWORD Flags, DWORD* FoundElement, LPSTR Buffer, DWORD BufferSize, DWORD* FoundSize)
StartElementDWORDin検索を開始するソースパス要素のインデックスを指定する。
FileLPSTRin検索するソースファイルの名前を指定する。
FlagsDWORDin検索の動作を制御するフラグを指定する。
FoundElementDWORD*outoptionalファイルが見つかったソースパス要素のインデックスを受け取るポインタである。
BufferLPSTRoutoptional見つかったファイルの完全パスを受け取るバッファへのポインタである。NULL を指定すると必要なサイズのみを問い合わせできる。
BufferSizeDWORDinバッファのサイズ(バイト単位)を指定する。
FoundSizeDWORD*outoptional見つかったパスのサイズ(バイト単位)を受け取るポインタである。
vtbl 51 HRESULT GetSourceFileLineOffsets(LPSTR File, ULONGLONG* Buffer, DWORD BufferLines, DWORD* FileLines)
FileLPSTRin対象とするソースファイルの名前を指定する。
BufferULONGLONG*outoptional各行に対応する仮想アドレス(オフセット)の配列を受け取るバッファへのポインタである。NULL を指定すると必要な行数のみを問い合わせできる。
BufferLinesDWORDinバッファが保持できる行数を指定する。
FileLinesDWORD*outoptionalソースファイルの総行数を受け取るポインタである。
vtbl 52 HRESULT GetModuleVersionInformation(DWORD Index, ULONGLONG Base, LPSTR Item, void* Buffer, DWORD BufferSize, DWORD* VerInfoSize)
IndexDWORDin対象モジュールのインデックスを指定する。Base を使う場合は DEBUG_ANY_ID を指定する。
BaseULONGLONGin対象モジュールのベースアドレスを指定する。
ItemLPSTRin取得するバージョン情報項目を表す文字列(例 \\StringFileInfo\\... )を指定する。
Buffervoid*outoptionalデータを受け渡すバッファへのポインタである。
BufferSizeDWORDinバッファのサイズ(バイト単位)を指定する。
VerInfoSizeDWORD*outoptionalバージョン情報のサイズ(バイト単位)を受け取るポインタである。
vtbl 53 HRESULT GetModuleNameString(DWORD Which, DWORD Index, ULONGLONG Base, LPSTR Buffer, DWORD BufferSize, DWORD* NameSize)
WhichDWORDin取得する名前の種類(イメージ名・モジュール名など)を指定する。
IndexDWORDin対象モジュールのインデックスを指定する。Base を使う場合は DEBUG_ANY_ID を指定する。
BaseULONGLONGin対象モジュールのベースアドレスを指定する。
BufferLPSTRoutoptional取得した名前を受け取るバッファへのポインタである。NULL を指定すると必要なサイズのみを問い合わせできる。
BufferSizeDWORDinバッファのサイズ(バイト単位)を指定する。
NameSizeDWORD*outoptional名前のサイズ(バイト単位)を受け取るポインタである。
vtbl 54 HRESULT GetConstantName(ULONGLONG Module, DWORD TypeId, ULONGLONG Value, LPSTR NameBuffer, DWORD NameBufferSize, DWORD* NameSize)
ModuleULONGLONGin定数を含むモジュールのベースアドレスを指定する。
TypeIdDWORDin定数の型(列挙型など)の型 ID を指定する。
ValueULONGLONGin名前を求める定数の値を指定する。
NameBufferLPSTRoutoptional定数名を受け取るバッファへのポインタである。NULL を指定すると必要なサイズのみを問い合わせできる。
NameBufferSizeDWORDin名前バッファのサイズ(バイト単位)を指定する。
NameSizeDWORD*outoptional定数名のサイズ(バイト単位)を受け取るポインタである。
vtbl 55 HRESULT GetFieldName(ULONGLONG Module, DWORD TypeId, DWORD FieldIndex, LPSTR NameBuffer, DWORD NameBufferSize, DWORD* NameSize)
ModuleULONGLONGinフィールドを含むモジュールのベースアドレスを指定する。
TypeIdDWORDinフィールドを含む構造体型の型 ID を指定する。
FieldIndexDWORDin名前を求めるフィールドのゼロ始まりのインデックスを指定する。
NameBufferLPSTRoutoptionalフィールド名を受け取るバッファへのポインタである。NULL を指定すると必要なサイズのみを問い合わせできる。
NameBufferSizeDWORDin名前バッファのサイズ(バイト単位)を指定する。
NameSizeDWORD*outoptionalフィールド名のサイズ(バイト単位)を受け取るポインタである。
vtbl 56 HRESULT GetTypeOptions(DWORD* Options)
OptionsDWORD*out現在の型書式オプションのフラグを受け取るポインタである。
vtbl 57 HRESULT AddTypeOptions(DWORD Options)
OptionsDWORDin追加で有効にする型書式オプションのフラグを指定する。
vtbl 58 HRESULT RemoveTypeOptions(DWORD Options)
OptionsDWORDin無効にする型書式オプションのフラグを指定する。
vtbl 59 HRESULT SetTypeOptions(DWORD Options)
OptionsDWORDin設定する型書式オプションのフラグを指定する。

HSP用 COM定義

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

出力引数:
#define global IID_IDebugSymbols2 "{3A707211-AFDD-4495-AD4F-56FECDF8163F}"
#usecom global IDebugSymbols2 IID_IDebugSymbols2 "{}"
#comfunc global IDebugSymbols2_GetSymbolOptions             3 var
#comfunc global IDebugSymbols2_AddSymbolOptions             4 int
#comfunc global IDebugSymbols2_RemoveSymbolOptions          5 int
#comfunc global IDebugSymbols2_SetSymbolOptions             6 int
#comfunc global IDebugSymbols2_GetNameByOffset              7 int64,var,int,var,var
#comfunc global IDebugSymbols2_GetOffsetByName              8 str,var
#comfunc global IDebugSymbols2_GetNearNameByOffset          9 int64,int,var,int,var,var
#comfunc global IDebugSymbols2_GetLineByOffset              10 int64,var,var,int,var,var
#comfunc global IDebugSymbols2_GetOffsetByLine              11 int,str,var
#comfunc global IDebugSymbols2_GetNumberModules             12 var,var
#comfunc global IDebugSymbols2_GetModuleByIndex             13 int,var
#comfunc global IDebugSymbols2_GetModuleByModuleName        14 str,int,var,var
#comfunc global IDebugSymbols2_GetModuleByOffset            15 int64,int,var,var
#comfunc global IDebugSymbols2_GetModuleNames               16 int,int64,var,int,var,var,int,var,var,int,var
#comfunc global IDebugSymbols2_GetModuleParameters          17 int,var,int,var
#comfunc global IDebugSymbols2_GetSymbolModule              18 str,var
#comfunc global IDebugSymbols2_GetTypeName                  19 int64,int,var,int,var
#comfunc global IDebugSymbols2_GetTypeId                    20 int64,str,var
#comfunc global IDebugSymbols2_GetTypeSize                  21 int64,int,var
#comfunc global IDebugSymbols2_GetFieldOffset               22 int64,int,str,var
#comfunc global IDebugSymbols2_GetSymbolTypeId              23 str,var,var
#comfunc global IDebugSymbols2_GetOffsetTypeId              24 int64,var,var
#comfunc global IDebugSymbols2_ReadTypedDataVirtual         25 int64,int64,int,sptr,int,var
#comfunc global IDebugSymbols2_WriteTypedDataVirtual        26 int64,int64,int,sptr,int,var
#comfunc global IDebugSymbols2_OutputTypedDataVirtual       27 int,int64,int64,int,int
#comfunc global IDebugSymbols2_ReadTypedDataPhysical        28 int64,int64,int,sptr,int,var
#comfunc global IDebugSymbols2_WriteTypedDataPhysical       29 int64,int64,int,sptr,int,var
#comfunc global IDebugSymbols2_OutputTypedDataPhysical      30 int,int64,int64,int,int
#comfunc global IDebugSymbols2_GetScope                     31 var,var,sptr,int
#comfunc global IDebugSymbols2_SetScope                     32 int64,var,sptr,int
#comfunc global IDebugSymbols2_ResetScope                   33
#comfunc global IDebugSymbols2_GetScopeSymbolGroup          34 int,sptr,sptr
#comfunc global IDebugSymbols2_CreateSymbolGroup            35 sptr
#comfunc global IDebugSymbols2_StartSymbolMatch             36 str,var
#comfunc global IDebugSymbols2_GetNextSymbolMatch           37 int64,var,int,var,var
#comfunc global IDebugSymbols2_EndSymbolMatch               38 int64
#comfunc global IDebugSymbols2_Reload                       39 str
#comfunc global IDebugSymbols2_GetSymbolPath                40 var,int,var
#comfunc global IDebugSymbols2_SetSymbolPath                41 str
#comfunc global IDebugSymbols2_AppendSymbolPath             42 str
#comfunc global IDebugSymbols2_GetImagePath                 43 var,int,var
#comfunc global IDebugSymbols2_SetImagePath                 44 str
#comfunc global IDebugSymbols2_AppendImagePath              45 str
#comfunc global IDebugSymbols2_GetSourcePath                46 var,int,var
#comfunc global IDebugSymbols2_GetSourcePathElement         47 int,var,int,var
#comfunc global IDebugSymbols2_SetSourcePath                48 str
#comfunc global IDebugSymbols2_AppendSourcePath             49 str
#comfunc global IDebugSymbols2_FindSourceFile               50 int,str,int,var,var,int,var
#comfunc global IDebugSymbols2_GetSourceFileLineOffsets     51 str,var,int,var
#comfunc global IDebugSymbols2_GetModuleVersionInformation  52 int,int64,str,sptr,int,var
#comfunc global IDebugSymbols2_GetModuleNameString          53 int,int,int64,var,int,var
#comfunc global IDebugSymbols2_GetConstantName              54 int64,int,int64,var,int,var
#comfunc global IDebugSymbols2_GetFieldName                 55 int64,int,int,var,int,var
#comfunc global IDebugSymbols2_GetTypeOptions               56 var
#comfunc global IDebugSymbols2_AddTypeOptions               57 int
#comfunc global IDebugSymbols2_RemoveTypeOptions            58 int
#comfunc global IDebugSymbols2_SetTypeOptions               59 int
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。