IAppxFactory::CreatePackageReader 方法 (appxpackaging.h)
从 IStream 提供的内容创建只读包读取器。 此方法不验证 数字签名。
语法
HRESULT CreatePackageReader(
[in] IStream *inputStream,
[out, retval] IAppxPackageReader **packageReader
);
参数
[in] inputStream
类型: IStream*
提供包内容以供读取的输入流。 流必须支持 Read、 Seek 和 Stat。如果这些方法失败,则其错误代码可能会传递到此方法并由此方法返回。
[out, retval] packageReader
类型: IAppxPackageReader**
包读取器。
返回值
类型: HRESULT
如果方法成功,则返回 S_OK。 否则,它将返回一个错误代码,该错误代码包括但不限于下表中的代码。
返回代码 | 说明 |
---|---|
|
inputStream 提供的 ZIP 文件是交错 OPC 包。 |
|
inputStream 提供的 OPC 包包含 OPC 包/部件关系。 |
|
存在 CI 目录时, inputStream 提供的 OPC 包没有清单、块映射或签名文件。 |
|
包清单无效。 |
|
包块映射无效,ZIP 中心目录中的文件列表与块映射中的文件列表不匹配,或者 ZIP 中心目录中列出的文件大小与块映射中列出的文件和块大小不匹配。 |
备注
CreatePackageReader 方法通过流立即检索应用包的占用元素并验证其内容。 仅当 OPC 包和所有占用元素 (包括 ZIP 中心目录、清单、[Content_Types].xml 和块映射) 有效时,此方法才成功。
示例
有关示例,请参阅 快速入门:提取应用包内容 和 快速入门:读取应用包清单信息。
要求
最低受支持的客户端 | Windows 8 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2012 [仅限桌面应用] |
目标平台 | Windows |
标头 | appxpackaging.h |