Win32 API 日本語リファレンス
ホームStorage.Packaging.Appx › IAppxBundleReader

IAppxBundleReader

COM
IIDdd75b8c0-ba76-43b0-ae0f-68656a1dc5c8継承元IUnknown自前メソッド開始 vtbl3

メソッド 5

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

vtbl 3 HRESULT GetFootprintFile(APPX_BUNDLE_FOOTPRINT_FILE_TYPE fileType, IAppxFile** footprintFile)
fileTypeAPPX_BUNDLE_FOOTPRINT_FILE_TYPEin取得するフットプリントファイルの種類を示す APPX_BUNDLE_FOOTPRINT_FILE_TYPE 列挙値を指定する。
footprintFileIAppxFile**out指定した種類のフットプリントファイルを表す IAppxFile インターフェイスを受け取るポインタである。
vtbl 4 HRESULT GetBlockMap(IAppxBlockMapReader** blockMapReader)
blockMapReaderIAppxBlockMapReader**outバンドルのブロックマップを読み取る IAppxBlockMapReader インターフェイスを受け取るポインタである。
vtbl 5 HRESULT GetManifest(IAppxBundleManifestReader** manifestReader)
manifestReaderIAppxBundleManifestReader**outバンドルマニフェストを読み取る IAppxBundleManifestReader インターフェイスを受け取るポインタである。
vtbl 6 HRESULT GetPayloadPackages(IAppxFilesEnumerator** payloadPackages)
payloadPackagesIAppxFilesEnumerator**outバンドル内のペイロードパッケージを列挙する IAppxFilesEnumerator インターフェイスを受け取るポインタである。
vtbl 7 HRESULT GetPayloadPackage(LPWSTR fileName, IAppxFile** payloadPackage)
fileNameLPWSTRin取得するペイロードパッケージのファイル名を渡す。
payloadPackageIAppxFile**out指定した名前のペイロードパッケージを表す IAppxFile インターフェイスを受け取るポインタである。

HSP用 COM定義

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

#define global IID_IAppxBundleReader "{DD75B8C0-BA76-43B0-AE0F-68656A1DC5C8}"
#usecom global IAppxBundleReader IID_IAppxBundleReader "{}"
#comfunc global IAppxBundleReader_GetFootprintFile    3 int,sptr
#comfunc global IAppxBundleReader_GetBlockMap         4 sptr
#comfunc global IAppxBundleReader_GetManifest         5 sptr
#comfunc global IAppxBundleReader_GetPayloadPackages  6 sptr
#comfunc global IAppxBundleReader_GetPayloadPackage   7 wstr,sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。