vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   RSS-Feeds  | Newsletter  | Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2015
 
zurück
Rubrik: Registry28.07.01
RegOpenKeyEx-Funktion

RegCloseKeyEx öffnet einen Registry-Unterschlüssel und gibt das Handle zurück.

Betriebssystem:  Win95, Win98, WinNT 3.1, Win2000, WinMEViews:  12.265 

Summer-Special bei Tools & Components!
Gute Laune Sommer bei Tools & Components
Top Summer-Special - Sparen Sie teilweise über 100,- EUR
Alle sev-Entwicklerkomponenten und Komplettpakete jetzt bis zu 25% reduziert!
zum Beispiel:
  • Developer CD nur 455,- EUR statt 569,- EUR
  • sevDTA 2.0 nur 224,30 EUR statt 299,- EUR
  •  
  • vb@rchiv   Vol.6 nur 18,70 EUR statt 24,95 EUR
  • sevCoolbar 3.0 nur 58,70 EUR statt 69,- EUR
  • - Werbung -Und viele weitere Angebote           Aktionspreise nur für kurze Zeit gültig

    Deklaration:

    Declare Function RegOpenKeyEx Lib "advapi32.dll" _
      Alias "RegOpenKeyExA" ( _
      ByVal hKey As Long, _
      ByVal lpSubKey As String, _
      ByVal ulOptions As Long, _
      ByVal samDesired As Long, _
      phkResult As Long) As Long

    Beschreibung:
    RegOpenKeyEx öffnet einen Registry-Unterschlüssel und gibt das Handle zurück.

    Parameter:
    hKeyErwartet eine der "hKey"-Konstanten, die angeben, in welchem Systemverzeichnis der Registry ein Schlüssel geöffnet werden soll.
    lpSubKeyErwartet den Namen des Unterschlüssels, der geöffnet werden soll.
    ulOptionsDieser Parameter ist reserviert und wird nicht genutzt. Setzen Sie ihn zu diesem Zweck auf "0".
    samDesiredLegt die Zugriffsart fest (siehe auch "samDesired"-Konstanten).
    phkResultErwartet eine Long-Variable, die das Handle des geöffneten Registryschlüssels zurückgibt.

    hKey Konstanten:

    ' Einstellungen des aktuellen Anwenders
    ' z.B. Anwender- und Desktop-Einstellungen (Farb-/Soundkonfiguration
    ' Hardware-Konfiguration, Netzwerkprotokolle, Software-Klassen
    Private Const HKEY_LOCAL_MACHINE = &H80000002
     
    ' Teil von HKEY_LOCALE_MACHINE
    ' Enthält Definitionen für Dokumenttypen, Dateizuordnungen
    ' und Shell-Schnittstelle
    Private Const HKEY_CLASSES_ROOT = &H80000000
     
    Private Const HKEY_USERS = &H80000003
     
    ' Einstellungen des aktuellen Anwenders
    Private Const HKEY_CURRENT_USER = &H80000001
     
    ' (Win NT/2000) Performance Dataschlüssel
    Private Const HKEY_PERFORMANCE_DATA = &H80000004
     
    ' (Win 95/98) Dynamisch Daten
    Private Const HKEY_DYN_DATA = &H80000006
     
    ' Aktuelle Konfiguration
    Private Const HKEY_CURRENT_CONFIG = &H80000005

    Rückgabewert:
    Bei erfolgreichem Funktionsaufruf ist der Rückgabewert 0, andernfalls wird ein Wert ungleich 0 zurückgeliefert, der den Fehlercode wiedergibt.


    Beispiel:

    Private Declare Function RegOpenKeyEx Lib "advapi32.dll" _
      Alias "RegOpenKeyExA" ( _
      ByVal hKey As Long, _
      ByVal lpSubKey As String, _
      ByVal ulOptions As Long, _
      ByVal samDesired As Long, _
      phkResult As Long) As Long
     
    Private Declare Function RegQueryValueEx Lib "advapi32.dll" _
      Alias "RegQueryValueExA" ( _
      ByVal hKey As Long, _
      ByVal lpValueName As String, _
      ByVal lpReserved As Long, _
      lpType As Long, _
      lpData As Any, _
      lpcbData As Long) As Long
     
    Private Declare Function RegCloseKey Lib "advapi32.dll" ( _
      ByVal hKey As Long) As Long
     
    ' RegOpenKeyEx hKey-Konstanten
    ' ----------------------------
     
    ' Einstellungen des aktuellen Anwenders
    ' z.B. Anwender- und Desktop-Einstellungen (Farb-/Soundkonfiguration
    ' Hardware-Konfiguration, Netzwerkprotokolle, Software-Klassen
    Private Const HKEY_LOCAL_MACHINE = &H80000002
     
    ' Teil von HKEY_LOCALE_MACHINE
    ' Enthält Definitionen für Dokumenttypen, Dateizuordnungen
    ' und Shell-Schnittstelle
    Private Const HKEY_CLASSES_ROOT = &H80000000
     
    Private Const HKEY_USERS = &H80000003
     
    ' Einstellungen des aktuellen Anwenders
    Private Const HKEY_CURRENT_USER = &H80000001
     
    ' (Win NT/2000) Performance Dataschlüssel
    Private Const HKEY_PERFORMANCE_DATA = &H80000004
     
    ' (Win 95/98) Dynamisch Daten
    Private Const HKEY_DYN_DATA = &H80000006
     
    ' Aktuelle Konfiguration
    Private Const HKEY_CURRENT_CONFIG = &H80000005
     
     
    ' RegOpenKeyEx samDesired-Konstanten
    ' ----------------------------------
     
    ' Alle Arten von Zugiffen
    Private Const KEY_ALL_ACCESS = &HF003F
     
    ' Erlaubt das Erstellen von symbolischen Links
    Private Const KEY_CREATE_LINK = &H20
     
    ' Erlaubt, Unterschlüssel zu erstellen
    Private Const KEY_CREATE_SUB_KEY = &H4
     
    ' Erlaubt Unterschlüssel aufzulisten
    Private Const KEY_ENUMERATE_SUB_KEYS = &H8
     
    ' Aktiviert die Änderungsbenachrichtigung (nicht unter Win95)
    Private Const KEY_NOTIFY = &H10
     
    ' Erlaubt das Abfragen/Auslesen von Unterschlüssel
    Private Const KEY_QUERY_VALUE = &H1
     
    ' Lesezugriff
    Private Const KEY_READ = &H20019
     
    ' Erlaubt das Schreiben von Werten in Unterschlüssel
    Private Const KEY_SET_VALUE = &H2
     
    ' Schreibzugriff
    Private Const KEY_WRITE = &H20006
     
     
    ' RegQueryValueEx lpType-Konstanten
    ' ---------------------------------
     
    ' Binärdaten in beliebigem Format (Bytefolge)
    Private Const REG_BINARY = 3
     
    ' 32-Bit Zahl (Little Endian)
    Private Const REG_DWORD = 4
     
    ' 32-Bit Zahl (Big Endian)
    Private Const REG_DWORD_BIG_ENDIAN = 5
     
    ' nullterminierter String (vbNullChar), der nicht 
    ' aufgelöste Verweise auf Umgebungsvariablen enthält (z.B. "%PATH%")
    Private Const REG_EXPAND_SZ = 2
     
    ' symbolischer Link zu einem Unterschlüssel (Unicode)
    Private Const REG_LINK = 6
     
    ' Liste nullterminierter Strings, die durch ein weiteres 
    ' Nullzeichen (vbNullChar) beendet wird
    Private Const REG_MULTI_SZ = 7 
     
    ' Keine Daten
    Private Const REG_NONE = 0
     
    ' Liste von Ressourcen in einer Ressourcen Map
    Private Const REG_RESOURCE_LIST = 8
     
    ' nullterminierter String (vbNullChar)
    Private Const REG_SZ = 1
    ' ------------------------------------------------------------
    ' Registry-Eintrag lesen
    ' (am Beispiel des Windows-Produkt-Keys)
    Private Sub Command1_Click()
      Dim Retval As Long
      Dim hKey As Long
      Dim TmpSNum As String * 255
     
      ' Registryschlüssel öffnen
      Retval = RegOpenKeyEx(HKEY_LOCAL_MACHINE, _
        "Software\Microsoft\Windows\CurrentVersion", 0&, KEY_READ, hKey)
      If Retval <> 0 Then
        MsgBox "Der Schlüssel konnte nicht geöffnet werden."
        Exit Sub
      End If
     
      ' Wert auslesen
      Retval = RegQueryValueEx(hKey, "ProductID", 0, REG_SZ, _
        ByVal TmpSNum, Len(TmpSNum)) 
      If Retval <> 0 Then
        MsgBox "Der Schlüsselwert konnte nicht gelesen oder gefunden werden."
        Exit Sub
      End If
     
      ' Product-Key ausgeben
      MsgBox "Der Produkt Key lautet: " & Left$(TmpSNum, _
        InStr(1, TmpSNum, vbNullChar) - 1), , "Produkt-Key"
     
      ' Schlüssel wieder schliessen
      Retval = RegCloseKey(hKey)
    End Sub

    Diese Seite wurde bereits 12.265 mal aufgerufen.

    nach obenzurück
     
       

    Druckansicht Druckansicht Copyright ©2000-2015 vb@rchiv Dieter Otter
    Alle Rechte vorbehalten.
    Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

    Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel