次の方法で共有


ISignerCertificate::Initialize メソッド (certenroll.h)

Initialize メソッドは、署名証明書からオブジェクトを初期化します。

構文

HRESULT Initialize(
  [in] VARIANT_BOOL         MachineContext,
  [in] X509PrivateKeyVerify VerifyType,
  [in] EncodingType         Encoding,
  [in] BSTR                 strCertificate
);

パラメーター

[in] MachineContext

ローカル コンピューター証明書ストア コンテキストまたはユーザー コンテキストを検索して strCertificate パラメーターで識別される証明書を検索するかどうかを示すVARIANT_BOOL変数。 コンピューター のVARIANT_TRUE とユーザーの VARIANT_FALSE を指定します。

[in] VerifyType

証明書の署名に使用する秘密キーを検証する必要があるかどうかを指定する X509PrivateKeyVerify 列挙値。検証をサイレントにするか、ユーザー入力を許可するかを指定します。

[in] Encoding

Distinguished Encoding Rules (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
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
ISignerCertificate オブジェクトは既に初期化されています。

注釈

Initialize メソッド:

  • 証明書に関連付けられている秘密キーが存在するかどうかを確認します。
  • IX509SignatureInformation オブジェクトを作成し、それを ISignerCertificate オブジェクトに割り当てます。
  • 秘密キーから公開キー アルゴリズムを取得します。
  • 公開キー アルゴリズムを IX509SignatureInformation オブジェクトに割り当てます。

Initialize を呼び出す前に、次のプロパティ 設定します。

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー certenroll.h
[DLL] CertEnroll.dll

こちらもご覧ください

ISignerCertificate