レジストリを使用して、作業中のアプリの構成データを保存していますが、サブフォルダーの作成方法に苦労しています。
次に例を示します。
下HKEY_CURRENT_USER
に会社名用のフォルダーを作成し、次のようなアプリの 1 つを作成しました。
HKEY_CURRENT_USER/Company/App_Name
そのフォルダー内にキーを作成できますが、できないように見えるのは、その中にさらにフォルダーを作成することです。
HKEY_CURRENT_USER/Company/App_Name/midiDevice
特定のデバイスに関連するキーを保存できるようにします。これが私が達成しようとしていることです:
HKEY_CURRENT_USER/Company/App_Name HKEY_CURRENT_USER/Company/App_Name/useMidi HKEY_CURRENT_USER/Company/App_Name/activeMidiDevice HKEY_CURRENT_USER/Company/App_Name/midiDevice1/ HKEY_CURRENT_USER/Company/App_Name/midiDevice1/setting1 HKEY_CURRENT_USER/Company/App_Name/midiDevice1/setting2 HKEY_CURRENT_USER/Company/App_Name/midiDevice1/setting3 HKEY_CURRENT_USER/Company/App_Name/midiDevice2/ HKEY_CURRENT_USER/Company/App_Name/midiDevice2/setting1 HKEY_CURRENT_USER/Company/App_Name/midiDevice2/setting2 HKEY_CURRENT_USER/Company/App_Name/midiDevice2/setting3
これが私のコードです:
' Set flag to indicate that we need to use MIDI to control program and store device name
Dim registryPath As String = "HKEY_CURRENT_USER\Software\CompanyName\App_Name\"
My.Computer.Registry.SetValue(registryPath, "useMidi", True)
My.Computer.Registry.SetValue(registryPath, "activeMidiDevice", deviceName)
' Create device specific path to store settings
registryPath = "HKEY_CURRENT_USER\Software\CompanyName\App_Name\" & deviceName & "\"
Console.WriteLine("Path: " & registryPath)
' Write this to the registry
My.Computer.Registry.CurrentUser.CreateSubKey(registryPath)
My.Computer.Registry.SetValue(registryPath, "setting1", value1)
My.Computer.Registry.SetValue(registryPath, "setting2", value2)
My.Computer.Registry.SetValue(registryPath, "setting3", value3)
このコードは、同じレジストリ フォルダーにすべてのキーを作成するだけです。HKEY_CURRENT_USER\Software\CompanyName\App_Name\
これは些細なことだと確信しています (そして、レジストリを調べることでわかっています) 実行することは可能ですが、何が間違っているのでしょうか?