BCryptQueryProviderRegistration 関数 (bcrypt.h)
BCryptQueryProviderRegistration 関数は、CNG プロバイダーに関する情報を取得します。
構文
NTSTATUS BCryptQueryProviderRegistration(
[in] LPCWSTR pszProvider,
[in] ULONG dwMode,
[in] ULONG dwInterface,
[in, out] ULONG *pcbBuffer,
[in, out] PCRYPT_PROVIDER_REG *ppBuffer
);
パラメーター
[in] pszProvider
情報を取得するプロバイダーの名前を含む null で終わる Unicode 文字列へのポインター。
[in] dwMode
取得する情報の種類を指定します。 次のいずれかの値を指定できます。
値 | 意味 |
---|---|
|
プロバイダーの情報を取得します。 |
|
プロバイダーのユーザー モード情報を取得します。 |
|
プロバイダーのカーネル モード情報を取得します。 |
|
プロバイダーのユーザー モードとカーネル モードの両方の情報を取得します。 |
[in] dwInterface
情報を取得するインターフェイスを指定します。 次のいずれかの値を指定できます。
[in, out] pcbBuffer
エントリ時に、ppBuffer パラメーターが指すバッファーのサイズ (バイト単位) を含む ULONG 値へのポインター。 終了時に、この値はバッファーにコピーされたバイト数、またはバッファーの必要なサイズ (バイト単位) を受け取ります。
[in, out] ppBuffer
CRYPT_PROVIDER_REG構造体とプロバイダーを記述するその他のデータを受け取るバッファー ポインターへのポインター。
このパラメーターが NULL の場合、この関数は STATUS_BUFFER_TOO_SMALL を返し、すべてのデータの必要なサイズ (バイト単位) である pcbBuffer パラメーターが指す値を格納します。
このパラメーターが NULL ポインターのアドレスである場合、この関数は必要なメモリを割り当て、プロバイダー情報を入力して、このパラメーターにこのメモリへのポインターを配置します。 このメモリの使用が完了したら、このポインターを BCryptFreeBuffer 関数に渡して解放します。
このパラメーターが NULL 以外のポインターのアドレスである場合、この関数はプロバイダー情報をこのバッファーにコピーします。 pcbBuffer パラメーターには、バッファー全体のサイズ (バイト単位) が含まれている必要があります。 バッファーがすべてのプロバイダー情報を保持するのに十分な大きさでない場合、この関数は STATUS_BUFFER_TOO_SMALLを返します。
戻り値
関数の成功または失敗を示す状態コードを返します。
可能なリターン コードには、次のものが含まれますが、これらに限定されません。
リターン コード | 説明 |
---|---|
|
関数は成功しました。 |
|
1 つ以上のパラメーターが無効です。 |
|
pcbBuffer パラメーターで指定されたサイズは、すべてのデータを保持するのに十分な大きさではありません。 |
|
指定した条件に一致するプロバイダーが見つかりませんでした。 |
注釈
BCryptQueryProviderRegistration は、ユーザー モードでのみ呼び出すことができます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | bcrypt.h |
Library | Bcrypt.lib |
[DLL] | Bcrypt.dll |