Метод 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".

Возврат кода или значения Description
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
Объект уже инициализирован.

Замечания

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

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

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

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

Требования

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

См. также

IX509ExtensionTemplate