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

IDebugHostType4

COM
IID77d3cdc6-bd55-42bf-a4fd-d9aa60e3c1e1継承元IDebugHostType3自前メソッド開始 vtbl35

メソッド 3

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

vtbl 35 HRESULT GetExtendedArrayHeaderSize(ULONGLONG* headerSize)
headerSizeULONGLONG*out拡張配列のヘッダー部分のサイズをバイト数で受け取る ULONGLONG へのポインタである。[out] 引数である。
vtbl 36 HRESULT GetExtendedArrayDimensions(ULONGLONG dimensions, ExtendedArrayDimension* pDimensions)
dimensionsULONGLONGinpDimensions 配列に受け取る次元数を指定する。
pDimensionsExtendedArrayDimension*out拡張配列の各次元の情報を受け取る ExtendedArrayDimension の配列を指すポインタである。[out] 引数である。
vtbl 37 HRESULT GetUDTKind(UDTKind* udtKind)
udtKindUDTKind*outユーザー定義型(UDT)の種類(構造体、クラス、共用体など)を受け取る UDTKind へのポインタである。[out] 引数である。

HSP用 COM定義

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

出力引数:
#define global IID_IDebugHostType4 "{77D3CDC6-BD55-42BF-A4FD-D9AA60E3C1E1}"
#usecom global IDebugHostType4 IID_IDebugHostType4 "{}"
#comfunc global IDebugHostType4_GetExtendedArrayHeaderSize  35 var
#comfunc global IDebugHostType4_GetExtendedArrayDimensions  36 int64,var
#comfunc global IDebugHostType4_GetUDTKind                  37 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。