RegEnumValue

機能
指定のレジストリキーの値を列挙する
Declare Function RegEnumValue Lib "ADVAPI32.dll" Alias "RegEnumValueA" _
(ByVal hKey As Long, ByVal dwIndex As Long, ByVal lpValueName As String, _
lpcbValueName As Long, lpReserved As Long, lpType As Long, _
lpData As Any, ByVal lpcbData As Long) As Long
Declare Function RegEnumValue Lib "ADVAPI32.dll" Alias "RegEnumValueA" _
(ByVal hKey As Integer, ByVal dwIndex As Integer, ByVal lpValueName As String, _
lpcbValueName As Integer, lpReserved As Integer, lpType As Integer, _
lpData As Integer, ByVal lpcbData As Integer) As Integer

LONG RegEnumValue(
HKEY hKey,
DWORD dwIndex,
LPTSTR lpValueName,
LPDWORD lpcValueName,
LPDWORD lpReserved,
LPDWORD lpType,
LPBYTE lpData,
LPDWORD lpcbData
);
引数
hKey

ルートキーを指定する定義済みのキー
HKEY_CLASS_ROOT
HKEY_CURRNT_CONFING
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS
HKEY_DYN_DATA
dwIndex
取り出すキーのインデックス(最初は0)
lpName
(戻り値)サブキー名を受け取るバッファ
lpcbName
同、バイト数
lpReserved
常に0
lpType
(戻り値)値のタイプを示す定数
lpData
(戻り値)値を受け取るバッファ
通常はバイト配列を使う
lpcbData
同、バイト数
戻り値
正常終了のとき      ERROR_SUCCESS(=0)
エラーのとき        0以外
lpTypeの定数
REG_BINARY = 3                      バイナリデータ
REG_DWORD = 4                       32ビット数値
REG_DWORD_LITTLE_ENDIAN = 4         = REG_DWORD
REG_DWORD_BIG_ENDIAN = 5            バイトの並びがWindowsとは逆の32ビット値
REG_EXPAND_SZ = 2                   展開前の環境変数(例えば%PATH%)
REG_MULTI_SZ = 7                    二つのvbNullStringで終わる文字列
REG_NONE = 0                        未定義のタイプ
REG_RESOUCE_LIST = 8                ドライバのリソースリスト
REG_SZ = 1                          文字列