Condividi tramite


Procedura: leggere un valore da una chiave del Registro di sistema in Visual Basic

Il metodo GetValue dell'oggetto My.Computer.Registry consente di leggere valori nel Registro di sistema di Windows.

Se la chiave, “software \MyApp„ nell' esempio seguente, non esiste, viene generata un'eccezione.Se ValueName, “nome„ nell' esempio seguente, non esiste, Nothing viene restituito.

Il metodo di GetValue può essere utilizzato per determinare se un valore specificato è presente in una chiave specifica del Registro di sistema.

Quando il codice viene letto il Registro di sistema da un'applicazione Web, l'utente corrente è determinato dall' autenticazione e dalla rappresentazione che viene implementata nell' applicazione Web.

Per leggere un valore da una chiave del Registro di sistema

  • Utilizzare il metodo GetValue, specificando il percorso e il nome, per leggere un valore dalla chiave del Registro di sistema.Nell'esempio che segue il valore Name viene letto da HKEY_CURRENT_USER\Software\MyApp e visualizzato in una finestra di messaggio.

    Dim readValue = My.Computer.Registry.GetValue(
        "HKEY_CURRENT_USER\Software\MyApp", "Name", Nothing)
    MsgBox("The value is " & readValue)
    

Questo esempio di codice è inoltre disponibile come frammento di codice IntelliSense.Nella casella di selezione dei frammenti di codice si trova in Sistema operativo Windows > Registro di sistema.Per ulteriori informazioni, vedere Frammenti di codice.

Per determinare se un valore è presente in una chiave del Registro di sistema

  • Utilizzare il metodo GetValue per recuperare il valore.I controlli di codice se il valore è presente e restituisce un messaggio in caso contrario.

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

Programmazione efficiente

Il Registro di sistema contiene le chiavi di primo livello che vengono utilizzate per l'archiviazione dei dati.La chiave di primo livello HKEY_LOCAL_MACHINE viene ad esempio utilizzata per archiviare le impostazioni a livello di computer impiegate da tutti gli utenti, mentre HKEY_CURRENT_USER viene utilizzata per l'archiviazione dei dati specifici di un singolo utente.

Le seguenti condizioni possono generare un'eccezione:

Sicurezza

Per eseguire questo processo, l'assembly richiede un livello di privilegio concesso dalla classe RegistryPermission.Se viene eseguito in un contesto ad affidabilità parziale, il processo può generare un'eccezione a causa dell'insufficienza di privilegi.Allo stesso modo, l'utente deve disporre degli ACL corretti per la creazione o la scrittura nelle impostazioni.Un'applicazione locale che dispone dell'autorizzazione di sicurezza per l'accesso di codice potrebbe ad esempio non disporre dell'autorizzazione del sistema operativo.Per ulteriori informazioni, vedere Nozioni fondamentali sulla sicurezza per l’accesso al codice.

Vedere anche

Riferimenti

RegistryProxy

RegistryHive

Altre risorse

Lettura e scrittura nel Registro di sistema (Visual Basic)