Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Även om My.Computer.Registry bör täcka dina grundläggande behov när du programmerar mot registret, kan du också använda Registry klasserna och RegistryKey i Microsoft.Win32 namnområdet för .NET.
Nycklar i registerklassen
Klassen Registry tillhandahåller de basregisternycklar som kan användas för att komma åt undernycklar och deras värden. Själva basnycklarna är skrivskyddade. I följande tabell visas och beskrivs de sju nycklar som exponeras av Registry klassen.
| Nyckel | Beskrivning |
|---|---|
| ClassesRoot | Definierar typerna av dokument och de egenskaper som är associerade med dessa typer. |
| CurrentConfig | Innehåller information om maskinvarukonfiguration som inte är användarspecifik. |
| CurrentUser | Innehåller information om aktuella användarinställningar, till exempel miljövariabler. |
| DynData | Innehåller dynamiska registerdata, till exempel de som används av virtuella enhetsdrivrutiner. |
| LocalMachine | Innehåller fem undernycklar (maskinvara, SAM, säkerhet, programvara och system) som innehåller konfigurationsdata för den lokala datorn. |
| PerformanceData | Innehåller prestandainformation för programvarukomponenter. |
| Users | Innehåller information om standardinställningarna för användare. |
Viktigt!
Det är säkrare att skriva data till den aktuella användaren (CurrentUser) än till den lokala datorn (LocalMachine). En situation som vanligtvis kallas "skvattning" uppstår när nyckeln du skapar tidigare har skapats av en annan, möjligen skadlig, process. Om du vill förhindra att detta inträffar använder du en metod, till exempel , som GetValuereturnerar Nothing om nyckeln inte redan finns.
Läsa ett värde från registret
Följande kod visar hur du läser en sträng från HKEY_CURRENT_USER.
Dim regVersion As Microsoft.Win32.RegistryKey
Dim keyValue = "Software\\Microsoft\\TestApp\\1.0"
regVersion = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(keyValue, False)
Dim intVersion As Integer = 0
If regVersion IsNot Nothing Then
intVersion = regVersion.GetValue("Version", 0)
regVersion.Close()
End If
Följande kod läser, inkrementerar och skriver sedan en sträng till HKEY_CURRENT_USER.
Dim regVersion = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(
"SOFTWARE\\Microsoft\\TestApp\\1.0", True)
If regVersion Is Nothing Then
' Key doesn't exist; create it.
regVersion = Microsoft.Win32.Registry.CurrentUser.CreateSubKey(
"SOFTWARE\\Microsoft\\TestApp\\1.0")
End If
Dim intVersion As Integer = 0
If regVersion IsNot Nothing Then
intVersion = regVersion.GetValue("Version", 0)
intVersion = intVersion + 1
regVersion.SetValue("Version", intVersion)
regVersion.Close()
End If