VB6 リファレンス お品書き へ戻ります
Visual Basic6 リファレンス


VB6 レジストリ操作
レジストリへの読み書きに関する操作

Visual Basic で作成されたアプリケーションのプログラム情報は、次の標準レジストリ エントリに保存されます。

HKEY_CURRENT_USER¥Software¥VB and VBA Program Settings¥アプリケーション名¥セクション名¥キー名

お品書き
● サンプルアプリケーション名とセクション名から、キー名と値をすべて抽出するサンプル プログラム
● GetSettingレジストリからキーの値を返す
● GetAllSettingレジストリからキー名とキーの値の配列を返す
● SaveSettingレジストリへキーの値を保存
● DeleteSettingレジストリのセクションまたはキーの削除


● レジストリ参照の記述例

'===========================================
'  アプリケーション名とセクション名から、キー名と値をすべて抽出する
'===========================================
Private Sub Command1_Click()

    Dim result As Variant  'リストを格納する変数
    Dim i As Integer

    result = GetAllSettings("VBsample", "Setup")                      'キーのリストを作成

    For i = LBound(result, 1) To UBound(result, 1)                    'キーの数だけループ
        Debug.Print "キー名:" & result(i, 0) & " 値:" & result(i, 1)   'キー名と値の表示
    Next i

End Sub


● GetSetting 関数
【機能】指定したアプリケーション名、セクション名、キー名から、値を返します。
【書式】result = GetSetting (アプリケーション名, セクション名, キー名, 初期値)
【 例 】 result = GetSetting("VBsample", "Setup", "Version", "インストールされていません")
result = GetSetting("VBsample", "Setup", "Version")
result = GetSetting("VBsample", "Setup¥User", "Version")    '階層がある場合
result = GetSetting("VBsample¥Setup", "User", "Version")    '階層がある場合

  ※ キー設定が無い場合は、初期値で設定した値が返ります。初期値を省略すると、ヌルストリング ("") が返ります。
  ※ 指定するアプリケーション名、セクション名、キー名は、大文字/小文字の区別はしません。
  ※ "HKEY_CURRENT_USER¥Software¥VB and VBA Program Settings" 配下にしかアクセスできません。


● GetAllSetting 関数
【機能】指定したアプリケーション名、セクション名から、キー名とキー値のリストを返します。
【書式】result = GetAllSetting (アプリケーション名, セクション名)
【 例 】 Dim result As Variant  'リストを格納する変数
Dim i As Integer
result = GetAllSettings("VBsample", "Setup")    'キーのリストを作成
For i = LBound(result, 1) To UBound(result, 1)  'キーの数だけループ
    Debug.Print "キー名:" & result(i, 0) & " 値:" & result(i, 1)
Next i

  ※ アプリケーション、または、セクションが存在しない場合は、初期化されていないバリアント型 (Variant) の値を返します。
  ※ "HKEY_CURRENT_USER¥Software¥VB and VBA Program Settings" 配下にしかアクセスできません。


● SaveSetting ステートメント
【機能】指定したアプリケーション名、セクション名、キー名へ、値を保存/作成します。
【書式】SaveSetting アプリケーション名, セクション名, キー名, 値
【 例 】 SaveSetting "VBsample", "Setup", "Version", 3
SaveSetting "VBsample", "Setup¥User", "Version", 3    '階層を増やす場合
SaveSetting "VBsample¥Setup", "User", "Version", 3    '階層を増やす場合

  ※ キー設定が保存できない場合、エラーが発生します。
  ※ アプリケーション名は "HKEY_CURRENT_USER¥Software¥VB and VBA Program Settings" 配下に書き込まれます。


● DeleteSetting ステートメント
【機能】指定したアプリケーション、または、セクション、もしくは、キーを削除します。
【書式】DeleteSetting アプリケーション名, セクション名, キー名   ※指定のキーを削除します
DeleteSetting アプリケーション名, セクション名            ※指定のセクションを削除します
DeleteSetting アプリケーション名                             ※指定のアプリケーションを削除します
【 例 】 DeleteSetting "VBsample", "Setup", "Version"
DeleteSetting "VBsample", "Setup"
DeleteSetting "VBsample"

  ※ アプリケーション、または、セクション、もしくは、キー設定が存在しない場合は、エラーが発生します。
  ※ "HKEY_CURRENT_USER¥Software¥VB and VBA Program Settings" 配下にしかアクセスできません。