TKSoft-Online

Arbeiten mit der Registry PDF Drucken E-Mail
( 1 Vote )
MS-Access Bsp. DB's - Bsp. Downloads Datei und System
  
Mittwoch, den 09. Januar 2008 um 01:00 Uhr

Problemstellung:

Diese Bsp-DB beschäftigt sich mit Lösungen um mit VB(A) die Windows Registrydatei zu lesen
bzw. bearbeiten zu können
Um mittels VB(A) mit der Registry arbeiten zu können sind eine Vielzahl von API-Funktionen erforderlich.
Alle erforderliche Aufrufe, Auflistungen und Funktionen befinden sich im Modul: mod_Registry der Bsp-DB
Um alle Funktionen zu verwenden ist es nur erforderlich das Modul in die betreffende DB zu importieren.

Aber wie geht das? Das erfahrt Ihr im Folgenden.

Voraussetzungen:

Das Bsp ist unter A00-A07 lauffähig

unter A07 muss sich Bsp-DB in einen „Vertrauenswürdigen Standort“ befinden

 

Einzige Einschränkung ist unter Windows Vista das Auslesen der ProductId (s. Bsp-DB).
Dies ist nicht möglich da dieser Schlüssel nicht existiert

 

Funktionsweise:

Leider ist es nicht möglich den Registry-Editor zu öffnen und gleich einen ein kompletten Schlüssel mit zu geben
damit der Editor direkt dort hin springt.
Windows speichert aber den letzten aufgerufenen Schlüssel im Schlüssel:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit\LastKey
Der folgende Code macht sich diesen Umstand zu nutze (s. mod_Regedit )
Unter Windws Vista tritt, eigenartigerweise, der Laufzeitfehler 5 beim Aufruf des
Registryeditors mittels Shell-Methode auf.
Deswegen ist zusätzlich die ShellExecute-Funktion mit enthalten.

Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
       (ByVal Hwnd As LongByVal Ipoperation As String, _
        ByVal Ipfile As StringByVal Ipparameters As String, _
        ByVal Ipdirectory As StringByVal nshowcmd As LongAs Long

Public Sub Open_RegEdit(oFrm As Form, sRegkey As String)

    On Error GoTo Open_RegEdit_Error

    Dim sLastkey As String
    Dim DoOpenFile As Long

    sLastkey = fWertLesen(HKEY_CURRENT_USER, _
                          "Software\Microsoft\Windows\CurrentVersion\Applets\Regedit", _
                          "LastKey")
    If sLastkey <> sRegkey Then
        fStringSpeichern HKEY_CURRENT_USER, _
                         "Software\Microsoft\Windows\CurrentVersion\Applets\Regedit", _
                         "LastKey", sRegkey
    End If

    Shell ("regedit.exe")

    On Error GoTo 0
    Exit Sub

Open_RegEdit_Error:
    If Err.Number = 5 Then
        DoOpenFile = ShellExecute(oFrm.Hwnd, vbNullString, "regedt32.exe", _
                                  vbNullString, vbNullString, 1)
    ElseIf Err.Number = 53 Then
        Shell ("regedt32.exe")
    Else
        Dim strErrString As String
        strErrString = "Error Information..." & vbCrLf
        strErrString = strErrString & "Error#: " & Err.Number & vbCrLf
        strErrString = strErrString & "Description: " & Err.Description
        MsgBox strErrString, vbCritical + vbOKOnly, "Error in procedure Open_RegEdit of Modul Regedit"
    End If
End Sub

 

Die Prozedur erwartet 2 Parameter.

oFrm = das Formular, meistens Me.
sRegKey = der Schlüssel zu dem gesprungen werden soll.

Zuerst wird der gespeicherte Schlüssel gelesen und mit dem übergebenen verglichen.
Sind diese ungleich wird der übergebene gespeichert und der Registryeditor geöffnet.
z.B.:

Open_RegEdit Me, "HKEY_CURRENT_USER\Software\TommyK\BspDB"

 

In der Bsp-DB sind folgende Lösungen enthalten:

1. Auslesen der Windows ProductId (nicht bei Windows Vista)
2. Auslesen des Run-Keys (Autostart der Registry)
3. Lesen, Schreiben und Löschen eines Schlüssels.
4. Bsp. zum Speichern von Formularpostionen in der Registry

Arbeiten mit der Registry

Arbeiten mit der Registry
für A00-A07

Die Zip-Datei enthält eine Version ab A00




Erstellt am
Dateigröße
Downloads
17.01.2008
41.14 KB
508

 

Downloads in dieser Kategorie

MS-Access Datei & System

MS-Access Datei & System

 Seite: 1

 Seite: 2


DatumKlicks
Total1896
Mi. 081
Di. 075
Mo. 062
Sa. 046
Do. 021
Mi. 014
Di. 314
Aktualisiert ( Mittwoch, den 26. Januar 2011 um 07:32 Uhr )
 

Kommentar schreiben


Sicherheitscode
Aktualisieren

Login

Latest Comments

Latest Forum Posts

Mehr »

Download Statistik

41 Kategorien
187 Dateien
168490 Downloads