Megosztás a következőn keresztül:


Olvasás és írás a beállításjegyzékbe a Microsoft.Win32 névtér használatával (Visual Basic)

Bár My.Computer.Registry az alapszintű igényeket kielégítheti a beállításjegyzékben történő programozás során, a .NET Registry névterében is használhatja a RegistryKey és Microsoft.Win32 osztályokat.

Kulcsok a beállításjegyzék-osztályban

Az Registry osztály tartalmazza az alkulcsokhoz és azok értékeihez való hozzáféréshez használható alapkulcsokat. Az alapkulcsok csak olvashatók. Az alábbi táblázat felsorolja és ismerteti az osztály által Registry közzétett hét kulcsot.

Kulcs Leírás
ClassesRoot Meghatározza a dokumentumtípusokat és az ezekhez a típusokhoz társított tulajdonságokat.
CurrentConfig Olyan hardverkonfigurációs adatokat tartalmaz, amelyek nem felhasználóspecifikusak.
CurrentUser Információkat tartalmaz az aktuális felhasználói beállításokról, például környezeti változókról.
DynData Dinamikus beállításjegyzék-adatokat tartalmaz, például a virtuális eszközillesztők által használt adatokat.
LocalMachine Öt alkulcsot tartalmaz (hardver, SAM, biztonság, szoftver és rendszer), amelyek a helyi számítógép konfigurációs adatait tartalmazzák.
PerformanceData A szoftverösszetevők teljesítményadatait tartalmazza.
Users Információkat tartalmaz az alapértelmezett felhasználói beállításokról.

Fontos

Biztonságosabb adatokat írni az aktuális felhasználónak (CurrentUser), mint a helyi számítógépre (LocalMachine). A jellemzően "guggolásnak" nevezett feltétel akkor fordul elő, ha a létrehozott kulcsot korábban egy másik, esetleg rosszindulatú folyamat hozta létre. Ennek megakadályozása érdekében használjon olyan metódust, például GetValue, amely akkor ad vissza Nothing , ha a kulcs még nem létezik.

Érték beolvasása a beállításjegyzékből

Az alábbi kód bemutatja, hogyan olvasható be egy karakterlánc a HKEY_CURRENT_USER beállításjegyzékből.

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

A következő kód beolvassa egy sztring értékét a HKEY_CURRENT_USER-be, növeli, majd ugyanoda visszaírja.

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

Lásd még