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

IDebugFailureAnalysis2

COM
IIDea15c288-8226-4b70-acf6-0be6b189e3ad継承元IUnknown自前メソッド開始 vtbl3

メソッド 23

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

vtbl 3 DWORD GetFailureClass()
vtbl 4 DEBUG_FAILURE_TYPE GetFailureType()
vtbl 5 DWORD GetFailureCode()
vtbl 6 FA_ENTRY* Get(DEBUG_FLR_PARAM_TYPE Tag)
TagDEBUG_FLR_PARAM_TYPEin取得する障害分析エントリを識別するタグ(DEBUG_FLR_PARAM_TYPE)を指定する。
vtbl 7 FA_ENTRY* GetNext(FA_ENTRY* Entry, DEBUG_FLR_PARAM_TYPE Tag, DEBUG_FLR_PARAM_TYPE TagMask)
EntryFA_ENTRY*in列挙の起点となる現在のエントリ(FA_ENTRY)を指定する。先頭から列挙する場合は NULL を渡す。
TagDEBUG_FLR_PARAM_TYPEin列挙対象を絞り込むタグ(DEBUG_FLR_PARAM_TYPE)を指定する。
TagMaskDEBUG_FLR_PARAM_TYPEinタグの比較に適用するマスク(DEBUG_FLR_PARAM_TYPE)を指定する。
vtbl 8 FA_ENTRY* GetString(DEBUG_FLR_PARAM_TYPE Tag, LPSTR Str, DWORD MaxSize)
TagDEBUG_FLR_PARAM_TYPEin値を取得する対象のタグ(DEBUG_FLR_PARAM_TYPE)を指定する。
StrLPSTRoutタグの文字列値を受け取るバッファである。
MaxSizeDWORDinStr バッファの最大サイズ(バイト数)を指定する。
vtbl 9 FA_ENTRY* GetBuffer(DEBUG_FLR_PARAM_TYPE Tag, void* Buf, DWORD Size)
TagDEBUG_FLR_PARAM_TYPEin値を取得する対象のタグ(DEBUG_FLR_PARAM_TYPE)を指定する。
Bufvoid*outタグのバイナリデータを受け取るバッファへのポインタである。
SizeDWORDinBuf バッファのサイズ(バイト数)を指定する。
vtbl 10 FA_ENTRY* GetUlong(DEBUG_FLR_PARAM_TYPE Tag, DWORD* Value)
TagDEBUG_FLR_PARAM_TYPEin値を取得する対象のタグ(DEBUG_FLR_PARAM_TYPE)を指定する。
ValueDWORD*outタグの 32 ビット符号なし整数値を受け取る。
vtbl 11 FA_ENTRY* GetUlong64(DEBUG_FLR_PARAM_TYPE Tag, ULONGLONG* Value)
TagDEBUG_FLR_PARAM_TYPEin値を取得する対象のタグ(DEBUG_FLR_PARAM_TYPE)を指定する。
ValueULONGLONG*outタグの 64 ビット符号なし整数値を受け取る。
vtbl 12 FA_ENTRY* NextEntry(FA_ENTRY* Entry)
EntryFA_ENTRY*inoptional列挙の起点となる現在のエントリ(FA_ENTRY)を指定する。先頭から列挙する場合は NULL を渡す。
vtbl 13 FA_ENTRY* SetString(DEBUG_FLR_PARAM_TYPE Tag, LPSTR Str)
TagDEBUG_FLR_PARAM_TYPEin値を設定する対象のタグ(DEBUG_FLR_PARAM_TYPE)を指定する。
StrLPSTRinタグに設定する文字列値を指定する。
vtbl 14 FA_ENTRY* SetExtensionCommand(DEBUG_FLR_PARAM_TYPE Tag, LPSTR Extension)
TagDEBUG_FLR_PARAM_TYPEin拡張コマンドを設定する対象のタグ(DEBUG_FLR_PARAM_TYPE)を指定する。
ExtensionLPSTRinタグに関連付けるデバッガ拡張コマンド文字列を指定する。
vtbl 15 FA_ENTRY* SetUlong(DEBUG_FLR_PARAM_TYPE Tag, DWORD Value)
TagDEBUG_FLR_PARAM_TYPEin値を設定する対象のタグ(DEBUG_FLR_PARAM_TYPE)を指定する。
ValueDWORDinタグに設定する 32 ビット符号なし整数値を指定する。
vtbl 16 FA_ENTRY* SetUlong64(DEBUG_FLR_PARAM_TYPE Tag, ULONGLONG Value)
TagDEBUG_FLR_PARAM_TYPEin値を設定する対象のタグ(DEBUG_FLR_PARAM_TYPE)を指定する。
ValueULONGLONGinタグに設定する 64 ビット符号なし整数値を指定する。
vtbl 17 FA_ENTRY* SetBuffer(DEBUG_FLR_PARAM_TYPE Tag, FA_ENTRY_TYPE EntryType, void* Buf, DWORD Size)
TagDEBUG_FLR_PARAM_TYPEin値を設定する対象のタグ(DEBUG_FLR_PARAM_TYPE)を指定する。
EntryTypeFA_ENTRY_TYPEin設定するエントリのデータ型(FA_ENTRY_TYPE)を指定する。
Bufvoid*inタグに設定するバイナリデータへのポインタである。
SizeDWORDinBuf データのサイズ(バイト数)を指定する。
vtbl 18 FA_ENTRY* AddString(DEBUG_FLR_PARAM_TYPE Tag, LPSTR Str)
TagDEBUG_FLR_PARAM_TYPEin文字列を追加する対象のタグ(DEBUG_FLR_PARAM_TYPE)を指定する。
StrLPSTRinタグに追加する文字列値を指定する。
vtbl 19 FA_ENTRY* AddExtensionCommand(DEBUG_FLR_PARAM_TYPE Tag, LPSTR Extension)
TagDEBUG_FLR_PARAM_TYPEin拡張コマンドを追加する対象のタグ(DEBUG_FLR_PARAM_TYPE)を指定する。
ExtensionLPSTRinタグに追加するデバッガ拡張コマンド文字列を指定する。
vtbl 20 FA_ENTRY* AddUlong(DEBUG_FLR_PARAM_TYPE Tag, DWORD Value)
TagDEBUG_FLR_PARAM_TYPEin値を追加する対象のタグ(DEBUG_FLR_PARAM_TYPE)を指定する。
ValueDWORDinタグに追加する 32 ビット符号なし整数値を指定する。
vtbl 21 FA_ENTRY* AddUlong64(DEBUG_FLR_PARAM_TYPE Tag, ULONGLONG Value)
TagDEBUG_FLR_PARAM_TYPEin値を追加する対象のタグ(DEBUG_FLR_PARAM_TYPE)を指定する。
ValueULONGLONGinタグに追加する 64 ビット符号なし整数値を指定する。
vtbl 22 FA_ENTRY* AddBuffer(DEBUG_FLR_PARAM_TYPE Tag, FA_ENTRY_TYPE EntryType, void* Buf, DWORD Size)
TagDEBUG_FLR_PARAM_TYPEinデータを追加する対象のタグ(DEBUG_FLR_PARAM_TYPE)を指定する。
EntryTypeFA_ENTRY_TYPEin追加するエントリのデータ型(FA_ENTRY_TYPE)を指定する。
Bufvoid*inタグに追加するバイナリデータへのポインタである。
SizeDWORDinBuf データのサイズ(バイト数)を指定する。
vtbl 23 HRESULT GetDebugFATagControl(IDebugFAEntryTags** FATagControl)
FATagControlIDebugFAEntryTags**out障害分析エントリのタグを操作する IDebugFAEntryTags インターフェイスを受け取る。
vtbl 24 HRESULT GetAnalysisXml(IXMLDOMElement** ppXMLDOMElement)
ppXMLDOMElementIXMLDOMElement**out障害分析結果を表す XML DOM 要素 IXMLDOMElement を受け取る。
vtbl 25 HRESULT AddStructuredAnalysisData(DEBUG_FLR_PARAM_TYPE Tag, IDebugFailureAnalysis2* Analysis)
TagDEBUG_FLR_PARAM_TYPEin構造化分析データを追加する対象のタグ(DEBUG_FLR_PARAM_TYPE)を指定する。
AnalysisIDebugFailureAnalysis2*in入れ子として追加する構造化された障害分析 IDebugFailureAnalysis2 を指定する。

HSP用 COM定義

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

出力引数:
#define global IID_IDebugFailureAnalysis2 "{EA15C288-8226-4B70-ACF6-0BE6B189E3AD}"
#usecom global IDebugFailureAnalysis2 IID_IDebugFailureAnalysis2 "{}"
#comfunc global IDebugFailureAnalysis2_GetFailureClass            3
#comfunc global IDebugFailureAnalysis2_GetFailureType             4
#comfunc global IDebugFailureAnalysis2_GetFailureCode             5
#comfunc global IDebugFailureAnalysis2_Get                        6 int
#comfunc global IDebugFailureAnalysis2_GetNext                    7 var,int,int
#comfunc global IDebugFailureAnalysis2_GetString                  8 int,var,int
#comfunc global IDebugFailureAnalysis2_GetBuffer                  9 int,sptr,int
#comfunc global IDebugFailureAnalysis2_GetUlong                   10 int,var
#comfunc global IDebugFailureAnalysis2_GetUlong64                 11 int,var
#comfunc global IDebugFailureAnalysis2_NextEntry                  12 var
#comfunc global IDebugFailureAnalysis2_SetString                  13 int,str
#comfunc global IDebugFailureAnalysis2_SetExtensionCommand        14 int,str
#comfunc global IDebugFailureAnalysis2_SetUlong                   15 int,int
#comfunc global IDebugFailureAnalysis2_SetUlong64                 16 int,int64
#comfunc global IDebugFailureAnalysis2_SetBuffer                  17 int,int,sptr,int
#comfunc global IDebugFailureAnalysis2_AddString                  18 int,str
#comfunc global IDebugFailureAnalysis2_AddExtensionCommand        19 int,str
#comfunc global IDebugFailureAnalysis2_AddUlong                   20 int,int
#comfunc global IDebugFailureAnalysis2_AddUlong64                 21 int,int64
#comfunc global IDebugFailureAnalysis2_AddBuffer                  22 int,int,sptr,int
#comfunc global IDebugFailureAnalysis2_GetDebugFATagControl       23 sptr
#comfunc global IDebugFailureAnalysis2_GetAnalysisXml             24 sptr
#comfunc global IDebugFailureAnalysis2_AddStructuredAnalysisData  25 int,sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。