IAppxBundleFactory2::CreateBundleReader2 方法 (appxpackaging.h)
重要
某些信息与预发行产品相关,该产品在商业发布之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
创建一个只读捆绑包对象,该对象从 IStream 对象读取其内容,该对象具有用于指定捆绑包的预期摘要的可选参数。
语法
HRESULT CreateBundleReader2(
[in] IStream *inputStream,
[in,optional] LPCWSTR expectedDigest,
[out] IAppxBundleReader **bundleReader
);
参数
[in] inputStream
提供包内容以供读取的输入流。 流必须支持 ISequentialStream::Read、 IStream::Seek 和 IStream::Stat。如果这些方法失败,则其错误代码可能会传递给此方法并由此方法返回。
[in,optional] expectedDigest
包含预期摘要的 LPCWSTR,捆绑包文件的哈希表示形式。
[out] bundleReader
创建的捆绑包读取器。
返回值
如果该方法成功,则它会返回 S_OK。 否则,它将返回一个错误代码,该代码包括但不限于下表中的错误代码。
返回代码 | 说明 |
---|---|
APPX_E_INTERLEAVING_NOT_ALLOWED | 由 *inputStream8 传递的 ZIP 文件是交错 OPC 包。 |
APPX_E_RELATIONSHIPS_NOT_ALLOWED | inputStream 提供的 OPC 包包含 OPC 包/部件关系。 |
APPX_E_MISSING_REQUIRED_FILE | 如果存在 CI 目录, 则 inputStream 提供的 OPC 包没有清单、块映射或签名文件。 |
APPX_E_INVALID_MANIFEST | 捆绑清单无效。 |
APPX_E_INVALID_MANIFEST | 捆绑清单无效。 |
APPX_E_DIGEST_MISMATCH | 对象的摘要与 expectedDigest 中提供的摘要不匹配。 |
注解
通过调用 IAppxDigestProvider::GetDigest 获取 expecteDigest 参数的摘要字符串。
要求
要求 | 值 |
---|---|
Header | appxpackaging.h |