

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# キーストレージプロバイダー (KSP) を使用した NCryptEnumKeys
<a name="ksp-library-apis-enum-keys"></a>

NCryptEnumKeys 関数は、キーストレージプロバイダー (KSP) に保存されているキーを一覧表示します。

## パラメータ
<a name="ksp-library-apis-enum-keys-parameters"></a>

 `hProvider` [in]   
キーストレージプロバイダーハンドル。このハンドルは、[`NCryptOpenStorageProvider`](ksp-library-apis-open-provider.md) を使用して取得します。

 `pszScope` [in, unused]   
 このパラメータは NULL に設定します。

 `ppKeyName` [out]   
キー名を保存する `NCryptKeyName` 構造へのポインタアドレス。使用後にこのメモリを解放するには、`NCryptFreeBuffer` を呼び出します。

`ppEnumState` [in, out]  
列挙の進行状況を追跡する VOID ポインタアドレス。キーストレージプロバイダーは、この情報を内部的に使用して列挙シーケンスを管理します。新しい列挙を最初から開始するには、このポインタを NULL に設定します。  
列挙の完了後にこのメモリを解放するには、このポインタを `NCryptFreeBuffer` に渡します。

`dwFlags` [in]  
関数の動作を変更するためのフラグ。この関数にはフラグはありません。

## 戻り値
<a name="ksp-library-apis-enum-keys-return-value"></a>

この関数は、成功または失敗を示すステータスコードを返します。

一般的なリターンコードは次のとおりです。


****  

| リターンコード | 説明 | 
| --- | --- | 
| ERROR\_SUCCESS | オペレーションが正常に完了しました。 | 
| NTE\_INVALID\_PARAMETER | 1 つ以上のパラメータが無効です。 | 
| NTE\_FAIL | オペレーションを完了できませんでした。 | 
| NTE\_INVALID\_HANDLE | `hProvider` のハンドルが無効です。 | 
| NTE\_NO\_MORE\_ITEMS | 列挙には、使用可能なすべてのキーが一覧表示されています。 | 