RegQueryValueEx

機能
指定のレジストリキーおよび値名を与えて値データを取得する
Declare Function RegQueryValueEx Lib "ADVAPI32.dll" Alias "RegQueryValueExA" _
(ByVal hKey As Long, ByVal lpValueName As String, lpReserved As Long, _
lptype As Long, lpData As Any, lpcbData As Long) As Long
Declare Function RegQueryValueEx Lib "ADVAPI32.dll" Alias "RegQueryValueExA" _
(ByVal hKey As Integer, ByVal lpValueName As String, lpReserved As Integer, _
lptype As Integer, lpData As Integer, lpcbData As Integer) As Integer

LONG RegQueryValueEx(
HKEY hKey,
LPCTSTR lpValueName,
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
lpValueName
データを取得する値名
vbNullStringを指定すると(標準)を対象とする
lpReserved
常に0
lpType
(戻り値)データのタイプを受け取る長整数バッファ
lpData
(戻り値)値を受け取るバッファ
lpcbData
同、バイト数
戻り値
正常終了のとき         ERROR_SUCCESS(=0)
エラーのとき           0以外
サンプル
ダウンロード(RegQueryValueEx.lzh 3.45KB)

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                            文字列