Метод IAlternativeName::InitializeFromOtherName (certenroll.h)

Метод InitializeFromOtherName инициализирует объект из идентификатора объекта (OID) и связанных необработанных данных (массив байтов). Этот метод предоставляется для поддержки поля otherName в объявлении расширения Abstract Syntax Notation One (ASN.1) AlternativeNames .


----------------------------------------------------------------------
-- AlternativeNames 
-- XCN_OID_SUBJECT_ALT_NAME2 (2.5.29.17)
----------------------------------------------------------------------

AltNames ::= SEQUENCE --#public-- OF GeneralName
GeneralNames ::= AltNames

GeneralName ::= CHOICE 
{
   otherName               [0] IMPLICIT OtherName,
   rfc822Name              [1] IMPLICIT IA5STRING,
   dNSName                 [2] IMPLICIT IA5STRING,
   x400Address             [3] IMPLICIT SeqOfAny,       -- Not supported
   directoryName           [4] EXPLICIT ANY,    
   ediPartyName            [5] IMPLICIT SeqOfAny,
   uniformResourceLocator  [6] IMPLICIT IA5STRING,
   iPAddress               [7] IMPLICIT OCTETSTRING,
   registeredID            [8] IMPLICIT EncodedObjectID -- Not supported
}

OtherName ::= SEQUENCE 
{
   type                    EncodedObjectID,
   value                   [0] EXPLICIT NOCOPYANY 
}

Синтаксис

HRESULT InitializeFromOtherName(
  [in] IObjectId    *pObjectId,
  [in] EncodingType Encoding,
  [in] BSTR         strRawData,
  [in] VARIANT_BOOL ToBeWrapped
);

Параметры

[in] pObjectId

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

[in] Encoding

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

[in] strRawData

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

[in] ToBeWrapped

Переменная VARIANT_BOOL , которая определяет, кодируется ли входная строка, содержащаяся в параметре strRawData , и сохраняется ли она в виде строки октета (массив байтов).

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

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

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

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

Комментарии

Эту функцию можно использовать для инициализации объекта IAlternativeName из OID и связанного строкового значения. Строка закодирована в Юникоде. Если для параметра ToBeWrapped задано значение true, строка кодируется с помощью Distinguished Encoding Rules (DER). OID можно получить, вызвав свойство ObjectId . Вы можете получить закодированную строку или, если toBeWrapped имеет значение true, массив байтов в кодировке DER, вызвав свойство RawData для получения закодированного массива байтов.

Требования

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

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

IAlternativeName