ICertProperty::InitializeDecode 方法 (certenroll.h)

InitializeDecode 方法會從包含屬性值的位元組數位初始化物件。 位元組陣列是以 Unicode 編碼字串表示。

語法

HRESULT InitializeDecode(
  [in] EncodingType Encoding,
  [in] BSTR         strEncodedData
);

參數

[in] Encoding

EncodingType 列舉值,指定套用至輸入字串的 Unicode 編碼類型。

[in] strEncodedData

包含 可辨別編碼規則 ( DER) 編碼屬性值的 BSTR 變數。

傳回值

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

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

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

備註

呼叫 PropertyId 屬性來指定要初始化的屬性。 您可以呼叫 RawData 屬性來擷取編碼的屬性值。 呼叫 SetValueOnCertificate 方法,以將屬性值與憑證產生關聯。

如果 InitializeDecode 方法失敗, 則不會初始化 ICertProperty 物件,而且不會儲存輸入屬性值。 不過, PropertyId 屬性會保留指定的標識碼。

提供 InitializeDecode 方法,可讓您初始化不存在特定介面 之CERTENROLL_PROPERTYID 列舉中所識別的自定義屬性和屬性。 該列舉中的每個支援值都包含數據類型的相關信息,通常是 CRYPT_INTEGER_BLOB,您必須提供給 InitializeDecode 方法。 您可以使用 IBinaryConverter 介面將位元組陣列轉換成字串。

下列介面可簡化最常見屬性的建立:

規格需求

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

另請參閱

ICertProperties

ICertProperty