次の方法で共有


RegEnumKeyA 関数 (winreg.h)

指定した開いているレジストリ キーのサブキーを列挙します。 この関数は、呼び出されるたびに 1 つのサブキーの名前を取得します。

この関数は、16 ビット バージョンの Windows との互換性のためにのみ提供されます。 アプリケーションでは、RegEnumKeyEx 関数を使用する必要があります。
 

構文

LSTATUS RegEnumKeyA(
  [in]  HKEY  hKey,
  [in]  DWORD dwIndex,
  [out] LPSTR lpName,
  [in]  DWORD cchName
);

パラメーター

[in] hKey

開いているレジストリ キーへのハンドル。 キーは、KEY_ENUMERATE_SUB_KEYSアクセス権で開かれている必要があります。 詳細については、「レジストリ キーのセキュリティとアクセス権のを する」を参照してください。

このハンドルは、RegCreateKeyEx、RegCreateKeyTransacted、RegOpenKeyEx、または RegOpenKeyTransacted 関数 返されます。 また、次のいずれかの定義済みキー することもできます。

HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS

[in] dwIndex

取得する hKey のサブキーのインデックス 。 この値は、RegEnumKey 関数の最初の呼び出しでは 0 にし、その後の呼び出しではインクリメントする必要があります。

サブキーは順序付けされないため、新しいサブキーには任意のインデックスがあります。 これは、関数が任意の順序でサブキーを返す可能性があることを意味します。

[out] lpName

終端の null 文字を含む、サブキーの名前を受け取るバッファーへのポインター。 この関数は、完全なキー階層ではなく、サブキーの名前のみをバッファーにコピーします。

詳細については、「レジストリ要素のサイズ制限」を参照してください。

[in] cchName

lpName パラメーターが指すバッファーのサイズ (TCHAR)。 必要なバッファー サイズを決定するには、RegQueryInfoKey 関数を使用して、hKey パラメーターによって識別されるキーの最大サブキーのサイズを決定します。

戻り値

関数が成功した場合、戻り値はERROR_SUCCESS。

関数が失敗した場合、戻り値はシステム エラー コードです。 使用可能なサブキーがそれ以上ない場合、関数はERROR_NO_MORE_ITEMSを返します。

lpName バッファーが小さすぎてキーの名前を受け取れなければ、関数はERROR_MORE_DATAを返します。

備考

サブキーを列挙するには、アプリケーションは最初に、dwIndex パラメーターを 0 に設定して、RegEnumKey 関数を呼び出す必要があります。 その後、アプリケーションは、dwIndex パラメーターをインクリメントし、サブキーがなくなったまで RegEnumKey 関数を呼び出す必要があります (つまり、関数はERROR_NO_MORE_ITEMSを返します)。

アプリケーションでは、dwIndex 関数の最初の呼び出しで最後のキーのインデックスを設定し、インデックス 0 のサブキーが列挙されるまでインデックスをデクリメントすることもできます。 最後のサブキーのインデックスを取得するには、RegQueryInfoKeyを使用します。

アプリケーションで RegEnumKey 関数を使用している間は、クエリ対象のキーを変更する可能性のある登録関数を呼び出さないでください。

手記

winreg.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして RegEnumKey を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー winreg.h (Windows.h を含む)
ライブラリ Advapi32.lib
DLL Advapi32.dll

関連項目

RegCloseKey

RegCreateKeyEx の

RegDeleteKey を する

RegEnumKeyEx を する

RegOpenKeyEx を する

RegQueryInfoKey の

レジストリ関数 を する

レジストリの概要