Поделиться через


Практическое руководство. Определение наличия значения в разделе реестра в Visual Basic

Определить, существует ли заданное значение в определенном разделе реестра, можно с помощью метода GetValue объекта My.Computer.Registry.

При чтении реестра из веб-приложения то, какой пользователь будет считаться текущим, зависит от проверки подлинности и олицетворения, реализованных в веб-приложении.

Определение существования значения в разделе реестра

  • Для извлечения значения используйте метод GetValue. Следующий код проверяет значение и возвращает соответствующее сообщение, если его не существует.

    If My.Computer.Registry.GetValue("HKEY_LOCAL_MACHINE\TestApp",
    "TestValue", Nothing) Is Nothing Then
      MsgBox("Value does not exist.")
    End If
    

Отказоустойчивость

Исключение может возникнуть при следующих условиях.

  • Имя раздела представляет собой значение Nothing (ArgumentNullException).

  • У пользователя отсутствуют разрешения на создание разделов реестра (SecurityException).

  • Длина имени раздела превышает ограничение в 255 знаков (ArgumentException).

  • Раздел является закрытым (IOException).

  • Раздел реестра доступен только для чтения (UnauthorizedAccessException).

Безопасность

Для выполнения этого процесса сборке требуется уровень привилегий, предоставляемых классом RegistryPermission. Если процесс выполняется в контексте с частичным доверием, он может сгенерировать исключение из-за недостатка привилегий. Аналогичным образом пользователь должен иметь правильный список управления доступом для создания и записи параметров. Например, локальное приложение, имеющее разрешение управления доступом для кода, может не иметь разрешения операционной системы. Дополнительные сведения см. в разделе Основы управления доступом для кода.

См. также

Задачи

Устранение неполадок, связанных с управлением реестром (Visual Basic)

Пошаговое руководство. Создание раздела реестра и изменение его значений (Visual Basic)

Ссылки

RegistryProxy

CurrentUser

Основные понятия

Основы управления доступом для кода

Типичные операции с реестром (Visual Basic)