ICspInformation::GetCspStatusFromOperations メソッド (certenroll.h)
GetCspStatusFromOperations メソッドは、指定された署名、暗号化、ハッシュ、または暗号操作と一致する、サポートされている最初のアルゴリズムの ICspStatus オブジェクトを作成します。
構文
HRESULT GetCspStatusFromOperations(
[in, optional] IObjectId *pAlgorithm,
[in] AlgorithmOperationFlags Operations,
[out] ICspStatus **ppValue
);
パラメーター
[in, optional] pAlgorithm
アルゴリズム OID を表す IObjectId インターフェイスへのポインター。 このパラメーターは省略可能であり、 NULL にすることができます。
- OID を指定し 、Operations パラメーターを XCN_NCRYPT_SIGNATURE_OPERATION に設定し、このフラグをXCN_NCRYPT_EXACT_MATCH_OPERATIONまたはXCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATIONと組み合わせると、OID に一致する最初の署名アルゴリズム (存在する場合) が使用されます。
- OID を指定しても Operations パラメーターを XCN_NCRYPT_SIGNATURE_OPERATIONに設定しない場合、または XCN_NCRYPT_SIGNATURE_OPERATION を設定してもXCN_NCRYPT_EXACT_MATCH_OPERATIONまたはXCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATIONと組み合わせない場合は、署名または暗号化に使用できる最初のアルゴリズムが使用されます。
- OID を指定しない場合は、 Operations パラメーターで指定されたフラグと一致する最初のサポートされるアルゴリズムが使用されます。
[in] Operations
取得するアルゴリズムの種類を識別する AlgorithmOperationFlags 列挙値。 次のいずれかの値を指定する必要があります。
- XCN_NCRYPT_CIPHER_OPERATION
- XCN_NCRYPT_HASH_OPERATION
- XCN_NCRYPT_SIGNATURE_OPERATION
- XCN_NCRYPT_SECRET_AGREEMENT_OPERATION
- XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION
上記のいずれかのフラグを次のいずれかのフラグと組み合わせることで、検索特性を調整できます。
- XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION
- XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION
- XCN_NCRYPT_EXACT_MATCH_OPERATION
XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATIONまたはXCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION基本設定フラグを設定した場合は、次のいずれかを指定することもできません。
- XCN_NCRYPT_CIPHER_OPERATION
- XCN_NCRYPT_HASH_OPERATION
[out] ppValue
ICspStatus インターフェイスへのポインターを受け取る変数のアドレス。
戻り値
関数が成功した場合、関数は S_OKを返します。
関数が失敗した場合は、エラーを示す HRESULT 値を返します。 有効な値を次の表に示しますが、これ以外にもあります。 一般的なエラー コードの一覧については、「 共通 HRESULT 値」を参照してください。
リターン コード/値 | Description |
---|---|
|
ICspStatus オブジェクトが見つかりませんでした。 |
|
ICspInformation オブジェクトが初期化されていません。 |
注釈
ICspStatus オブジェクトには、暗号化プロバイダーに関する状態情報が含まれています。 各オブジェクトは、プロバイダーによってサポートされている特定のアルゴリズムに対して初期化されます。 pAlgorithm パラメーターにアルゴリズムを指定しない場合、ICspStatus オブジェクトを作成するために、許可された操作と一致する最初のサポートされるアルゴリズムが選択されます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | certenroll.h |
[DLL] | CertEnroll.dll |