VBA: Registry-Werte schreiben und lesen

Mit VBA auf die Registry zugreifen - so geht's

Von: Lorenz Hölscher
Stand: 4. Mai 2011
Anmelden um Kommentare zu schreiben

Downloads zu diesem Beitrag

Über den Autor: Lorenz Hölscher

bild80517

Lorenz Hölscher ist freiberuflicher Dozent, Berater und Programmierer mit Schwerpunkt Anwendungs-Programmierung. Vorrangig widmet er sich Access, Word und Excel sowie begleitenden grafischen Arbeiten. Er legt viel Wert auf benutzerfreundliche Oberflächen und ordentliches Design in Optik und Programmierung. Zu Hilfe kommen ihm da seine langjährigen "branchenfremden" Erfahrungen als Architekt, Layouter und Designer.

Lorenz Hölscher bietet eigene Hilfeseiten an und hat bei Microsoft Press mehrere Bücher veröffentlicht zu Access 2007, Access 2007 VBA, Word 2007 VBA und Access 2010.

Beiträge des Autors als Atom-Feed Atom-Feed: Neues von akademie.de

Registry ansehen

Registry ansehen

Mit dem Programm regedit lassen sich die geschriebenen Werte in der Registry direkt kontrollieren oder ändern.

Die soeben geschriebenen Daten können Sie sich direkt in der Registry ansehen. Dazu klicken Sie bitte in der Taskleiste auf den Start-Knopf und geben nach Klick auf Ausführen... das Programm regedit ein. Damit öffnet sich der spezielle Registry-Editor, mit dem Sie Registry-Werte lesen und bearbeiten können.

Beim Testen wird es Ihnen passieren, dass der geänderte Registry-Zweig bereits geöffnet ist, aber Ihre per Code durchgeführten Änderungen nicht anzeigt. Sie können dann im Registry-Editor mit F5 die Anzeige aktualisieren lassen.

Alle hier geschriebenen Werte finden sich immer im Zweig HKEY_CURRENT_USER\Software\VB and VBA Program Settings\. Dort wird der in AppName angegebene Ast angelegt, der hier also MeinProgramm heißt. Darunter wiederum findet sich die Sektion Optionen, in welcher die Schlüssel mit ihren Werten enthalten sind.

Registry-Daten auslesen

Mit der GetSetting()-Funktion ermitteln Sie die geschriebenen Registry-Daten anhand ihrer Sektions- und Schlüsselnamen.

Beim nächsten Aufruf Ihres Programmes wollen Sie diese Daten wieder auslesen. Dazu gibt es als Gegenstück zu SaveSetting die GetSetting-Funktion. Auch diese sollten Sie am besten in einer eigenen Funktion kapseln, damit Sie auf Ihre vordefinierten Konstanten zurückgreifen können:

Function RegWertLesen(strWertname As String)
	RegWertLesen = GetSetting(m_cstrAppName, m_cstrSektion, strWertname, "")
End Function

Der vierte Parameter von GetSetting ist der Standardwert, der zurückgegeben wird, falls der Schlüssel in der Registry nicht gefunden wird. Sie können die vorhin gespeicherten Daten mit dieser Funktion und einer Testprozedur nun ermitteln und in einer MsgBox anzeigen:

Diese Seite ist für Mitglieder von akademie.de reserviert.

Möchten Sie die Mitgliedschaft 14 Tage kostenlos testen und den Beitrag komplett lesen?

Ich bin bereits Mitglied
Jetzt Probemitglied werden
Ich kann in den 14 Tagen Probezeit formlos z.B. per E-Mail stornieren. Wenn ich das nicht tue, entscheide ich mich für ein