Registry-zugriff mit vb?!?!

hallo,

ich habe vor ein kleines programm zu schreiben mit dem ich schlüssel in der registry anlegen kann und werte rein schreiben kann, oder aber auch werte ändern kann oder überprüfen kann.

wie mach ich das mit vb??

axl

Hallo Axl,

kuck dir mal diese Bibliothek an:

http://download.microsoft.com/download/vb60pro/updat…

Mit dieser Bibliothek kannst du recht komfortabel über Objekte auf die Registry zugreifen.

Gruß
Daniel

Hi,

es kommt darauf an, wie komplex das ganze sein soll.

Wenn du nur Registry-Einträge für dein eigenes Programm hinterlegen willst und hier wieder abrufen möchtest, dann kannst du das ganze über getsetting und savesetting machen

Beispiel:

Private Sub saveRegEntry(strSection as string, strKey as string, strSetting as string)
savesetting app.name, strSection, strKey, strSetting
End sub

Der Registry-Eintrag liegt unter HKEY_Current_User\Software\VB and VBA Settings

Dort entsteht ein Folder mit dem Namen von dem Programm.
Darunter wird ein weiterer mit der Section angelegt.
Dann ein Key mit dem Wert (Setting).

Du siehst es ist so ganz easy.

Auszulesen ist auch ganz einfach

Private Sub readRegEntry (strSection as string, strKey as string) as string
dim strSetting as string
strSetting=getsetting(app.name, strSection, strKey)
if strSetting="" then readRegEntry=„No Value“ else readRegEntry=strSetting
end Sub

Ich hoffe, dass dir das Beispiel weiterhilft.

Wenn du mehr über Registry lesen, schreiben, ändern etc. wissen willst, dann schau dir mal folgenden Link an
http://www.activevb.de/tipps/vb6tipps/tipp0107.html

greetz

Mario

Hi Axl,

ich würde es über das WshShell-Objekt lösen. Hier gibt es die Methoden:
RegDelete
The RegDelete method removes a registry entry based on strName.
Syntax: WshShell.RegDelete strName

RegRead
The RegRead method reads and returns a registry entry based on strName.
Syntax: WshShell.RegRead(strName)

RegWrite
The RegWrite method writes a new entry into the registry.
Syntax: WshShell.RegWrite strName, varValue [,strType]

Weitere Informationen findest Du auf
http://msdn.microsoft.com/library/default.asp?url=/l… und
http://www.devguru.com/Technologies/wsh/quickref/wsh…

Ich würde die „advapi32.dll“ benutzen, die bei Windows standardmässig enthalten ist und folgende Funktionen hat:

  • RegCloseKey
  • RegCreateKey
  • RegCreateKeyEx
  • RegDeleteKey
  • RegDeleteValue
  • RegEnumKeyEx
  • RegEnumValue
  • RegNotifyChangedKeyValue
  • RegOpenKey
  • RegOpenKeyEx
  • RegQueryValueEx
  • RegRestoreKey
  • RegSaveKey
  • RegSetValueEx

Zusätzlich kann man die Funktion „SHSetValue“ der „SHLWAPI.DLL“ benutzen.