2016-01-24 3 views
1

Я пытаюсь посмотреть, существует ли раздел реестра. Если да, то делаю, а если нет, я делаю что-то еще. Я пробовал разные вещи, но пока никто не работал.Как проверить, существует ли запись в реестре?

Я пробовал:

If My.Computer.Registry.CurrentUser.GetValue("MySubKey", True) Is Nothing Then 

Кроме того, я попытался увидеть, если regKey вар ничего. И еще несколько других я не могу вспомнить.

Любые идеи?

благодаря

+0

Согласно https://msdn.microsoft.com/en-us/library/microsoft.win32.registry.getvalue%28v=vs.110%29.aspx, вы не можете получить исключение, если ключ не существует , –

+0

Привет .. спасибо за ответ. Сейчас я работаю над этим, но мне нужно немного уйти. Тогда вы узнаете что-то. Спасибо – jumper

ответ

2

Чтобы проверить, является ли ключ реестра существует вы можете использовать это ...

'Obtain an instance of RegistryKey for the CurrentUser registry root. 
    Dim rkCurrentUser As RegistryKey = Registry.CurrentUser 
    ' Obtain the key (read-only) and display it. 
    If rkCurrentUser IsNot Nothing Then 
     Dim rkTest As RegistryKey = rkCurrentUser.OpenSubKey("MySubKey") 

     'Check and make sure we have something... 
     If rkTest IsNot Nothing Then 
     'You have something then... 

     rkTest.Close 'Close it, this is important... 
     Else 
     'You do not have anything... 
     End If 

     rkCurrentUser.Close 'Close this after you are done... 
    Else 
     'Failed to get instance of registry for the current user... 
    End If 

Есть и другие способы, как хорошо, но дайте мне знать, как это работает для вас ...

+0

Спасибо за ответ. Мне было трудно получить ответ Оливье на работу (я уверен, что это ошибка пилота, моя ошибка). Но я заработал довольно быстро. Большое спасибо за помощь и ... отлично провели день и ночь. – jumper

+0

Добро пожаловать, спасибо! – Codexer

+0

Работал отлично. Спасибо @jumper, и не спасибо MS! :} –

Смежные вопросы