BCryptEnumProviders 関数 (bcrypt.h)

BCryptEnumProviders 関数は、指定されたアルゴリズムをサポートするすべての CNG プロバイダーを取得します。

構文

NTSTATUS BCryptEnumProviders(
  [in]  LPCWSTR              pszAlgId,
  [out] ULONG                *pImplCount,
  [out] BCRYPT_PROVIDER_NAME **ppImplList,
  [in]  ULONG                dwFlags
);

パラメーター

[in] pszAlgId

プロバイダーを取得するアルゴリズムを識別する null で終わる Unicode 文字列へのポインター。 これには、定義済みの CNG アルゴリズム識別子 または別のアルゴリズム識別子のいずれかを指定できます。

[out] pImplCount

ppImplList 配列内の要素数を受け取る、ULONG 変数へのポインター。

[out] ppImplList

指定したアルゴリズムをサポートするプロバイダーのコレクションを受け取る BCRYPT_PROVIDER_NAME 構造体の配列のアドレス。 pImplCount パラメーターは、この配列内の要素の数を受け取ります。 このメモリは、このポインターを BCryptFreeBuffer 関数に渡すことによって不要になったときに解放する必要があります。

[in] dwFlags

この関数の動作を変更するフラグのセット。 現在、フラグは定義されていないため、このパラメーターは 0 である必要があります。

戻り値

関数の成功または失敗を示す状態コードを返します。

可能な戻りコードには、以下が含まれますが、これらに限定されません。

リターン コード 形容
STATUS_SUCCESS
関数が成功しました。
STATUS_INVALID_PARAMETER
1 つ以上のパラメーターが無効です。
STATUS_NO_MEMORY
メモリ割り当てエラーが発生しました。

備考

BCryptEnumProviders は、ユーザー モードまたはカーネル モードから呼び出すことができます。 カーネル モードの呼び出し元は、PASSIVE_LEVELIRQLで実行されている必要があります。

必要条件

要件 価値
サポートされる最小クライアント Windows Vista [デスクトップ アプリ |UWP アプリ]
サポートされる最小サーバー Windows Server 2008 [デスクトップ アプリ |UWP アプリ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー bcrypt.h
ライブラリ Bcrypt.lib
DLL Bcrypt.dll

関連項目

BCRYPT_PROVIDER_NAME

BCryptFreeBuffer