Поделиться через


Метод IAppxFactory::CreatePackageReader (appxpackaging.h)

Создает средство чтения пакетов только для чтения из содержимого, предоставленного IStream. Этот метод не проверяет цифровую подпись.

Синтаксис

HRESULT CreatePackageReader(
  [in]          IStream            *inputStream,
  [out, retval] IAppxPackageReader **packageReader
);

Параметры

[in] inputStream

Тип: IStream*

Входной поток, доставляющий содержимое пакета для чтения. Поток должен поддерживать чтение, поиск и статистику. Если эти методы завершаются ошибкой, коды ошибок могут быть переданы и возвращены этим методом.

[out, retval] packageReader

Тип: IAppxPackageReader**

Средство чтения пакетов.

Возвращаемое значение

Тип: HRESULT

Если метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки, который включает в себя, помимо прочего, те, которые приведены в следующей таблице.

Код возврата Описание
APPX_E_INTERLEAVING_NOT_ALLOWED
ZIP-файл, доставляемый inputStream , является пакетом OPC с чередованием.
APPX_E_RELATIONSHIPS_NOT_ALLOWED
Пакет OPC, предоставляемый inputStream , содержит связи между пакетом и частью OPC.
APPX_E_MISSING_REQUIRED_FILE
Пакет OPC, доставляемый inputStream , не имеет манифеста, карты блоков или файла сигнатуры при наличии каталога CI.
APPX_E_INVALID_MANIFEST
Недопустимый манифест пакета.
APPX_E_INVALID_BLOCKMAP
Карта блоков пакетов недопустимая, список файлов в центральном каталоге ZIP не соответствует списку файлов на карте блоков или размер файлов, перечисленных в центральном каталоге ZIP, не соответствует размерам файлов и блоков, перечисленным в схеме блоков.

Комментарии

Метод CreatePackageReader немедленно извлекает элементы содержимого пакета приложения через поток и проверяет их содержимое. Этот метод выполняется успешно, только если пакет OPC и все элементы занимаемой области (включая центральный каталог ZIP, манифест, [Content_Types].xml и карту блоков) являются допустимыми.

Примеры

Примеры см. в разделах Краткое руководство. Извлечение содержимого пакета приложения и Краткое руководство. Чтение сведений о манифесте пакета приложения.

Требования

   
Минимальная версия клиента Windows 8 [только классические приложения]
Минимальная версия сервера Windows Server 2012 [только классические приложения]
Целевая платформа Windows
Header appxpackaging.h

См. также раздел

IAppxFactory