ICertProperty::InitializeDecode メソッド (certenroll.h)
InitializeDecode メソッドは、プロパティ値を含むバイト配列からオブジェクトを初期化します。 バイト配列は、Unicode でエンコードされた文字列で表されます。
構文
HRESULT InitializeDecode(
[in] EncodingType Encoding,
[in] BSTR strEncodedData
);
パラメーター
[in] Encoding
入力文字列に適用される Unicode エンコードの種類を指定する EncodingType 列挙値。
[in] strEncodedData
Distinguished Encoding Rules (DER) でエンコードされたプロパティ値を含む BSTR 変数。
戻り値
関数が成功した場合、関数は S_OKを返します。
関数が失敗した場合は、エラーを示す HRESULT 値を返します。 有効な値を次の表に示しますが、これ以外にもあります。 一般的なエラー コードの一覧については、「 共通 HRESULT 値」を参照してください。
リターン コード/値 | Description |
---|---|
|
オブジェクトは既に初期化されています。 |
注釈
PropertyId プロパティを呼び出して、初期化するプロパティを指定します。 RawData プロパティを呼び出して、エンコードされたプロパティ値を取得できます。 SetValueOnCertificate メソッドを呼び出して、プロパティ値を証明書に関連付けます。
InitializeDecode メソッドが失敗した場合、ICertProperty オブジェクトは初期化されず、入力プロパティの値は保存されません。 ただし、 PropertyId プロパティは、指定された識別子を保持します。
InitializeDecode メソッドを使用すると、特定のインターフェイスが存在しないCERTENROLL_PROPERTYID列挙で識別されるカスタム プロパティとプロパティを初期化できます。 その列挙体でサポートされている各値には、InitializeDecode メソッドに指定する必要があるデータの種類 (通常はCRYPT_INTEGER_BLOB) に関する情報が含まれています。 IBinaryConverter インターフェイスを使用して、バイト配列を文字列に変換できます。
次のインターフェイスを使用すると、最も一般的なプロパティの作成が簡単になります。
- ICertPropertyArchived
- ICertPropertyArchivedKeyHash
- ICertPropertyAutoEnroll
- ICertPropertyBackedUp
- ICertPropertyDescription
- ICertPropertyEnrollment
- ICertPropertyFriendlyName
- ICertPropertyKeyProvInfo
- ICertPropertyRenewal
- ICertPropertyRequestOriginator
- ICertPropertySHA1Hash
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | certenroll.h |
[DLL] | CertEnroll.dll |