次の方法で共有


IAppxFactory3::CreateManifestReader2 メソッド (appxpackaging.h)

重要

一部の情報はプレリリース製品に関連しており、商用リリース前に大幅に変更される可能性があります。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。

IStream によって提供されるコンテンツから読み取り専用マニフェスト オブジェクト モデルを作成します。マニフェストに必要なダイジェストを指定するための省略可能なパラメーターを指定します。

構文

HRESULT CreateManifestReader2(
  [in]          IStream             *inputStream,
  [in,optional] LPCWSTR             expectedDigest,
  [out]         IAppxManifestReader **manifestReader
);

パラメーター

[in] inputStream

読み取り用のマニフェスト XML を提供する入力ストリーム。 ストリームは 、ISequentialStream::ReadIStream::Seek、および IStream::Stat をサポートする必要があります。これらのメソッドが失敗した場合、エラー コードがこのメソッドに渡され、このメソッドによって返される可能性があります。

[in,optional] expectedDigest

予想されるダイジェストを含む LPCWSTR。マニフェスト ファイルのハッシュ表現。

[out] manifestReader

作成されたマニフェスト リーダー。

戻り値

メソッドが成功すると、 S_OKが返されます。 それ以外の場合は、次の表に示すエラー コードが含まれますが、これらに限定されません。

リターン コード 説明
APPX_E_INVALID_MANIFEST inputStream には、マニフェストの構文上有効な XML が含まれていません。
APPX_E_DIGEST_MISMATCH オブジェクトのダイジェストが 、expectedDigest で指定されたダイジェストと一致しません。

注釈

CreateManifestReader2 を使用して、アプリ パッケージの外部でマニフェストを読み取ります。 このメソッドは、マニフェスト XML を検証します。 manifestReader は、マニフェスト XML 内のすべてのデータ要素と属性へのアクセスを提供します。 マニフェストは、AppxPackaging の ETW イベント ログにマニフェスト検証エラーの場所を記録します。

IAppxDigestProvider::GetDigest を呼び出して、expecteDigest パラメーターのダイジェスト文字列を取得します。

例については、「 クイック スタート: アプリ パッケージ マニフェスト情報の読み取り」を参照してください。

要件

要件
Header appxpackaging.h