проверка на regkey vb.net - PullRequest
       33

проверка на regkey vb.net

0 голосов
/ 17 ноября 2011

Я не могу получить следующий код, чтобы проверить, существует ли мой regestrykey, может кто-нибудь помочь.Идея состоит в том, чтобы проверить, существует ли он, если это так, и ничего не делать, если не создать его вместе со значением ...

полный ключ - HKEY_LOCAL_MACHINE \ SOFTWARE \ VTS \ Advanced Offset 2 \ Admin \ Access

>         If Dir$("HKEY_LOCAL_MACHINE\SOFTWARE\VTS\Advanced Offset 2\Admin", vbDirectory) <> "" Then

        Else
            MsgBox(".NET Framework 2.0")

        End If

ОБНОВЛЕННЫЙ КОД:

Dim l_subKeyPath As String = "SOFTWARE\VTS\Advanced Offset 2\Admin\Access"
Dim l_regKey As RegistryKey = My.Computer.Registry.LocalMachine.OpenSubKey(l_subKeyPath, False)
If (l_regKey Is Nothing) Then
    'if nothing then key doesn't exists
    'Registry.SetValue("HKEY_LOCAL_MACHINE\SOFTWARE\VTS\Advanced Offset 2\Admin", "ACCESS", "PASSWbORD")
    MsgBox("yess")
Else
    'key exists
    MsgBox("no")
End If

Ответы [ 2 ]

1 голос
/ 17 ноября 2011

Попробуйте это:

    Dim l_subKeyPath as string = "SOFTWARE\VTS\Advanced Offset 2\Admin\Access"
    Dim l_regKey As RegistryKey = My.Computer.Registry.LocalMachine.OpenSubKey(l_subKeyPath, False)
     If (l_regKey Is Nothing) Then
        'if nothing then key doesn't exists
     else
        'key exists
     End If

Цитата MSDN:

RegistryKey.OpenSubKey Method

Если запрошенный ключ не существует, этот метод возвращает Nothing вместо генерации исключения.

0 голосов
/ 17 ноября 2011

Вы говорите «проверьте, существует ли он, если это так, ничего не делайте, если не создайте его вместе с его значением ...». Если вы повторно указали ключ, вам также нужно создать NAME и добавить значение к имени, вы не можете добавить значение к ключу.

Взгляните на образец в MSDN OpenSubKey

...