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


Функция CryptXmlOpenToEncode (cryptxml.h)

Если функция CryptXmlOpenToEncode открывает цифровую подпись XML для кодирования и возвращает дескриптор открытого элемента Signature . Дескриптор инкапсулирует контекст документа с одной структурой CRYPT_XML_SIGNATURE и остается открытым до вызова функции CryptXmlClose .

Синтаксис

HRESULT CryptXmlOpenToEncode(
  [in, optional] const CRYPT_XML_TRANSFORM_CHAIN_CONFIG *pConfig,
                 DWORD                                  dwFlags,
  [in, optional] LPCWSTR                                wszId,
  [in]           const CRYPT_XML_PROPERTY               *rgProperty,
  [in]           ULONG                                  cProperty,
  [in, optional] const CRYPT_XML_BLOB                   *pEncoded,
  [optional]     HCRYPTXML                              *phSignature
);

Параметры

[in, optional] pConfig

Дескриптор обработчика цепочки преобразования. Если этот параметр имеет значение NULL, то для применения преобразований используется обработчик по умолчанию.

dwFlags

Значение DWORD , определяющее загрузку расширений CryptXML и сериализацию XML. Этот параметр может принимать одно из указанных ниже значений.

Значение Значение
CRYPT_XML_FLAG_NO_SERIALIZE
0x80000000
Запрет сериализации.
Примечание Не устанавливайте этот флаг, если несколько потоков обращаются к объекту CryptXml. Сериализация обеспечивает взаимное исключение, когда два или более потоков пытаются одновременно принять объект или память CryptXml.
 
CRYPT_XML_FLAG_DISABLE_EXTENSIONS
0x10000000
Используются только реализации по умолчанию для подписи и дайджеста. Если этот флаг установлен, другие зарегистрированные расширения не загружаются.

[in, optional] wszId

Указатель на строку Юникода, завершающуюся null, которая содержит атрибут Id элемента Signature . Если этот параметр имеет значение NULL, создается новый GUID. Если этот параметр является пустой строкой, атрибут Id не создается.

[in] rgProperty

Указатель на массив CRYPT_XML_PROPERTY структур, указывающих дополнительные свойства.

[in] cProperty

Количество элементов в массиве, на который указывает параметр rgProperty .

[in, optional] pEncoded

Указатель на структуру CRYPT_XML_BLOB , содержащую сигнатуру для кодирования.

[optional] phSignature

Дескриптор элемента Signature .

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

Если функция выполнена успешно, функция возвращает ноль.

Если функция завершается сбоем, она возвращает значение HRESULT , указывающее на ошибку.

Требования

Требование Значение
Минимальная версия клиента Windows 7 [только классические приложения]
Минимальная версия сервера Windows Server 2008 R2 [только классические приложения]
Целевая платформа Windows
Header cryptxml.h
Библиотека Cryptxml.lib
DLL Cryptxml.dll