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


Метод IX500DistinguishedName::D ecode (certenroll.h)

Метод Decode инициализирует объект из различающегося имени в кодировке Юникод.

Синтаксис

HRESULT Decode(
  [in] BSTR          strEncodedName,
  [in] EncodingType  Encoding,
  [in] X500NameFlags NameFlags
);

Параметры

[in] strEncodedName

Переменная BSTR , содержащая закодированное имя.

[in] Encoding

Значение перечисления EncodingType , указывающее тип кодировки Юникода, применяемой к входной строке. Значение по умолчанию — XCN_CRYPT_STRING_BASE64.

[in] NameFlags

Значение перечисления X500NameFlags , указывающее формат декодируемой строки.

Примечание Следующие флаги устанавливаются автоматически:
  • Значение по умолчанию, указанное в Certenroll.h, — XCN_CERT_NAME_STR_NONE.
  • Если не указать XCN_CERT_NAME_STR_FORWARD_FLAG, XCN_CERT_NAME_STR_REVERSE_FLAG применяется автоматически.
  • Если не указать XCN_CERT_NAME_STR_DISABLE_UTF8_DIR_STR_FLAG, XCN_CERT_NAME_STR_FORCE_UTF8_DIR_STR_FLAG применяется автоматически.
  • XCN_CERT_NAME_STR_ENABLE_PUNYCODE_FLAG устанавливается автоматически независимо от любого другого указанного флага.
 

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

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

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

Возвращаемый код/значение Описание
E_OUTOFMEMORY
Не удалось выделить память для декодированного значения.
E_POINTER
Параметр strEncodedName не может иметь значение NULL.
HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND)
Не удалось декодировать имя.

Комментарии

Этот метод вызывает функцию CryptoAPI CertNameToStr . Вызовите свойство Name , чтобы получить имя в виде символьной строки, завершаемой null. Вызовите свойство EncodedName , чтобы получить строку, содержащую закодированное имя.

Требования

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

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

IX500DistinguishedName