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


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

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

Синтаксис

HRESULT CreateValidatedBlockMapReader(
  [in]          IStream             *blockMapStream,
  [in]          LPCWSTR             signatureFileName,
  [out, retval] IAppxBlockMapReader **blockMapReader
);

Параметры

[in] blockMapStream

Тип: IStream*

Поток, доставляющий XML-код карты блоков для чтения. Поток должен поддерживать чтение, поиск и статистику.

[in] signatureFileName

Тип: LPCWSTR

Файл, содержащий цифровую подпись, используемую для проверки содержимого входного потока.

[out, retval] blockMapReader

Тип: IAppxBlockMapReader**

Средство чтения карты блоков.

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

Тип: HRESULT

Если метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки, который включает, помимо прочего, приведенные ниже. Этот метод может возвращать ошибки, передаваемые из используемых базовых API проверки. Например, этот метод может возвращать коды ошибок Crypto и WinTrust (0x8009xxxx, 0x800bxxxx), если сигнатура не может быть прочитана, является недопустимой или не соответствует содержимому blockMapStream.

Код возврата Описание
APPX_E_INVALID_BLOCKMAP
BlockMapStream не содержит синтаксически допустимый XML-код для карты блоков.

Комментарии

Этот метод используется, когда карта блоков существует отдельно, за пределами пакета приложения. Объект карты блоков предоставляет доступ ко всем элементам данных и атрибутам в XML-коде карты блоков.

Параметр fileName должен содержать путь к файлу цифровой подписи пакета (P7X) на диске. Если этот параметр не имеет значение NULL, этот метод проверяет формат файла подписи и содержимое blockMapStream на соответствие сигнатуре.

Требования

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

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

IAppxFactory

IAppxFactory::CreateBlockMapReader