IAppxBundleFactory2::CreateBundleReader2 method (appxpackaging.h)
Important
Some information relates to a prerelease product which may be substantially modified before it's commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Creates a read-only bundle object that reads its contents from an IStream object, with an optional parameter for specifying the expected digest for the bundle.
Syntax
HRESULT CreateBundleReader2(
[in] IStream *inputStream,
[in,optional] LPCWSTR expectedDigest,
[out] IAppxBundleReader **bundleReader
);
Parameters
[in] inputStream
The input stream that delivers the content of the package for reading. The stream must support ISequentialStream::Read, IStream::Seek, and IStream::Stat. If these methods fail, their error codes may be passed to and returned by this method.
[in,optional] expectedDigest
An LPCWSTR containing the expected digest, a hashed representation of the bundle file.
[out] bundleReader
The created bundle reader.
Return value
If the method succeeds, it returns S_OK. Otherwise, it returns an error code that includes, but is not limited to, those in the following table.
Return code | Description |
---|---|
APPX_E_INTERLEAVING_NOT_ALLOWED | The ZIP file delivered by *inputStream8 is an interleaved OPC package. |
APPX_E_RELATIONSHIPS_NOT_ALLOWED | The OPC package delivered by inputStream contains OPC package/part relationships. |
APPX_E_MISSING_REQUIRED_FILE | The OPC package delivered by inputStream does not have a manifest, or a block map, or a signature file when a CI catalog is present. |
APPX_E_INVALID_MANIFEST | The bundle manifest is not valid. |
APPX_E_INVALID_MANIFEST | The bundle manifest is not valid. |
APPX_E_DIGEST_MISMATCH | The digest for the object doesn't match the digest provided in expectedDigest. |
Remarks
Get the digest string for the expecteDigest parameter by calling IAppxDigestProvider::GetDigest.
Requirements
Requirement | Value |
---|---|
Header | appxpackaging.h |