共用方式為


IAlternativeName::InitializeFromOtherName 方法 (certenroll.h)

InitializeFromOtherName 方法會從物件標識碼 (OID) 和相關聯的原始數據 (位元組數組) 初始化物件。 這個方法可用來支援 Abstract Syntax Notation One (ASN.1) AlternativeNames 延伸模組宣告中的 otherName 欄位。


----------------------------------------------------------------------
-- 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

代表 OID 之 IObjectId 介面的指標。

[in] Encoding

EncodingType 列舉值,識別套用至 strRawData 參數的 Unicode 編碼類型。

[in] strRawData

BSTR 變數,其中包含與 OID 相關聯的名稱。

[in] ToBeWrapped

VARIANT_BOOL變數,識別 strRawData 參數中包含的輸入字串是否已編碼並儲存為八進位字串 (位元組數組) 。

傳回值

如果函式成功,函式會傳回 S_OK

如果函式失敗,它會傳回 指出錯誤的 HRESULT 值。 可能的值包括 (但不限於) 下表中的這些值。 如需常見錯誤碼的清單,請參閱 一般 HRESULT 值

傳回碼/值 Description
HRESULT_FROM_WIN32 (ERROR_ALREADY_INITIALIZED)
對象已經初始化。

備註

您可以使用此函式,從 OID 和相關聯的字串值初始化 IAlternativeName 物件。 字串會以 Unicode 編碼。 如果您為 ToBeWrapped 參數指定 true,則會使用 可辨別編碼規則 (DER) 來編碼字串。 您可以呼叫 ObjectId 屬性來擷取 OID。 您可以擷取編碼字串,或者,如果 ToBeWrapped 為 true,則呼叫 RawData 屬性來擷取編碼的位元組數位來擷取 DER 編碼的位元組數組。

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平台 Windows
標頭 certenroll.h
Dll CertEnroll.dll

另請參閱

IAlternativeName