我正在使用注册表来存储我正在处理的应用程序的一些配置数据,而我正在努力研究如何创建子文件夹。
以下是一个例子:
在HKEY_CURRENT_USER
下,我为我的公司名称创建了一个文件夹,然后是我的应用程序之一:
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\
我确信这是微不足道的(我从检查注册表中得知)它可以做但我做错了什么?