ICertPropertyRenewal::InitializeFromCertificateHash メソッド (certenroll.h)
InitializeFromCertificateHash メソッドは、新しい証明書からオブジェクトを初期化します。
構文
HRESULT InitializeFromCertificateHash(
[in] VARIANT_BOOL MachineContext,
[in] EncodingType Encoding,
[in] BSTR strCertificate
);
パラメーター
[in] MachineContext
証明書ストアがローカル コンピューター用か現在のユーザー用かを示す VARIANT_BOOL 値。 コンピューター のVARIANT_TRUE とユーザーの VARIANT_FALSE を指定します。
[in] Encoding
DER でエンコードされた証明書を含む入力文字列に適用される Unicode エンコードの種類を指定する EncodingType 列挙値。
[in] strCertificate
DER でエンコードされた証明書を含む BSTR 変数。
Windows 7 および Windows Server 2008 R2 以降では、エンコードされた証明書ではなく、証明書のサムプリントまたはシリアル番号を指定できます。 これにより、関数は適切なローカル ストアで一致する証明書を検索します。 以下の点に注意してください。
- BSTR は偶数の 16 進数である必要があります。
- 16 進数のペア間の空白は無視されます。
- Encoding パラメーターは、XCN_CRYPT_STRING_HEXRAWに設定する必要があります。
- MachineContext パラメーターは、ユーザーまたはコンピューター ストア、またはその両方を検索するかどうかを決定します。
- 秘密キーが必要な場合は、個人用ストアと要求ストアのみが検索されます。
- 秘密キーが必要ない場合は、ルートおよび中間 CA ストアも検索されます。
戻り値
関数が成功した場合、関数は S_OKを返します。
関数が失敗した場合は、エラーを示す HRESULT 値を返します。 有効な値を次の表に示しますが、これ以外にもあります。 一般的なエラー コードの一覧については、「 共通の HRESULT 値」を参照してください。
リターン コード/値 | Description |
---|---|
|
オブジェクトは既に初期化されています。 |
注釈
このメソッドは、指定した証明書を使用して SHA-1 ハッシュを作成します。 証明書は、抽象構文表記法 1 (ASN.1) 標準で定義されているDistinguished Encoding Rules (DER) を使用してエンコードする必要があります。 DER でエンコードされた証明書を含む文字列に適用される Unicode エンコードの種類も指定する必要があります。
通常、 ICertPropertyRenewal オブジェクトは登録プロセス中に初期化されます。 登録時に使用される証明書を取得するには、IX509Enrollment インターフェイスで Certificate プロパティを呼び出します。
SetValueOnCertificate メソッドを呼び出して、 プロパティを証明書に関連付けます。 Renewal プロパティを呼び出してハッシュを取得します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | certenroll.h |
[DLL] | CertEnroll.dll |