Метод IX509ExtensionTemplate::InitializeEncode (certenroll.h)

Метод InitializeEncode инициализирует расширение из идентификатора объекта шаблона (OID), а также из основных и дополнительных номеров версий. Этот метод поддерживается через Интернет.

Синтаксис

HRESULT InitializeEncode(
  [in] IObjectId *pTemplateOid,
  [in] LONG      MajorVersion,
  [in] LONG      MinorVersion
);

Параметры

[in] pTemplateOid

Указатель на интерфейс IObjectId , представляющий OID шаблона.

[in] MajorVersion

Переменная LONG , содержащая основной номер версии шаблона. Значение по умолчанию равно нулю (0).

[in] MinorVersion

Переменная LONG , содержащая дополнительный номер версии шаблона. Значение по умолчанию равно нулю (0).

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

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

Если функция завершается сбоем, она возвращает значение HRESULT , указывающее на ошибку. Допустимые значения включают, но не ограничиваются, значения, приведенные в следующей таблице. Список распространенных кодов ошибок см. в разделе Общие значения HRESULT.

Возвращаемый код или значение Описание
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
Объект уже инициализирован.

Комментарии

Прежде чем использовать объект IX509ExtensionTemplate, необходимо вызвать InitializeEncode или InitializeDecode. Эти два метода дополняют друг друга. Метод InitializeEncode позволяет создать объект расширения абстрактного синтаксиса (ASN.1) в кодировке Distinguished Encoding Rules (DER) из необработанных данных, а метод InitializeDecode позволяет инициализировать необработанные данные из закодированного объекта.

Для этого расширения можно получить следующие свойства:

  • Свойство Critical определяет, является ли расширение критическим. Это свойство также можно указать.
  • Свойство ObjectId извлекает OID.
  • Свойства MajorVersion и MinorVersion извлекают сведения о версии.
  • Свойство TemplateOid извлекает идентификатор идентификатора шаблона.

Прежде чем использовать объект IX509ExtensionBasicConstraints, необходимо вызвать InitializeEncode или InitializeDecode. Эти два метода дополняют друг друга. Метод InitializeEncode позволяет создать закодированную структуру ASN.1 на основе необработанных данных, а метод InitializeDecode позволяет инициализировать необработанные данные из закодированной структуры ASN.1. Необработанные данные для расширения можно получить, вызвав свойства MajorVersion, MinorVersion и TemplateOid .

Требования

   
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header certenroll.h
DLL CertEnroll.dll

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

IX509ExtensionTemplate