Win32 API 日本語リファレンス
ホームStorage.Imapi › IFileSystemImage3

IFileSystemImage3

COMIDispatch (デュアル)
IDispatch を実装(デュアルインターフェース)。HSP では comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。
IID7cff842c-7e97-4807-8304-910dd8f7c051継承元IFileSystemImage2呼び出し名前(IDispatch) または vtbl自前メソッド開始 vtbl59

メソッド 3

vtbl = vtable インデックス(0始まり)。IDispatch 実装のため HSP ではメソッド名でも呼べます(上記)。低レベルの index 呼び出し用に vtbl も掲載。0〜2 は IUnknown。

vtbl 59 HRESULT get_CreateRedundantUdfMetadataFiles(VARIANT_BOOL* pVal)
pValVARIANT_BOOL*out冗長な UDF メタデータファイルを作成するかどうかを受け取る VARIANT_BOOL へのポインタである。
vtbl 60 HRESULT put_CreateRedundantUdfMetadataFiles(VARIANT_BOOL newVal)
newValVARIANT_BOOLin冗長な UDF メタデータファイルを作成するかどうかを VARIANT_BOOL で指定する。
vtbl 61 HRESULT ProbeSpecificFileSystem(FsiFileSystems fileSystemToProbe, VARIANT_BOOL* isAppendable)
fileSystemToProbeFsiFileSystemsin追記可能かどうかを調べる対象のファイルシステム種別を指定する。
isAppendableVARIANT_BOOL*out指定したファイルシステムが追記可能かどうかを受け取る VARIANT_BOOL へのポインタである。

HSP用 COM定義

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

出力引数:
#define global IID_IFileSystemImage3 "{7CFF842C-7E97-4807-8304-910DD8F7C051}"
#usecom global IFileSystemImage3 IID_IFileSystemImage3 "{}"
#comfunc global IFileSystemImage3_get_CreateRedundantUdfMetadataFiles  59 var
#comfunc global IFileSystemImage3_put_CreateRedundantUdfMetadataFiles  60 int
#comfunc global IFileSystemImage3_ProbeSpecificFileSystem              61 int,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。