Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Rupprecht Nesselrodt Geändert vor über 11 Jahren
1
Wizards & Builders GmbH INI-Dateien und Registry Arbeiten mit der Registry von Windows NT / Windows 95 in Microsoft Visual FoxPro
2
Wizards & Builders GmbH Diese Schulung dient der Einführung in das Arbeiten mit INI-Dateien sowie der Registry von Windows NT unter Microsoft Visual FoxPro
3
Wizards & Builders GmbH Themenübersicht Aufbau von INI-Dateien Aufbau von INI-Dateien Verarbeiten von INI-Dateien Verarbeiten von INI-Dateien Bearbeiten der Registry Bearbeiten der Registry Bereiche der Registry Bereiche der Registry Die Bereiche im Einzelnen Die Bereiche im Einzelnen Werttypen in der Registry Werttypen in der Registry Dateien der Registry Dateien der Registry Beispiele für Registry-Keys Beispiele für Registry-Keys VFP-Funktionen für Registry VFP-Funktionen für Registry Betriebssystem-Funktionen für Registry Betriebssystem-Funktionen für Registry
4
Wizards & Builders GmbH Arbeiten mit INI-Dateien Verwendung von INI-Dateien unter Microsoft Visual FoxPro
5
Wizards & Builders GmbH Aufbau von INI-Dateien Werden nur noch ungern verwendet Werden nur noch ungern verwendet Können an beliebiger Stelle sein Können an beliebiger Stelle sein Enthalten versch. [Bereiche] Enthalten versch. [Bereiche] Darunter einen Schlüssel mit einer Wertzuweisung Darunter einen Schlüssel mit einer Wertzuweisung
6
Wizards & Builders GmbH Verarbeiten von INI-Dateien Deklaration DLL in WIN32API: Deklaration DLL in WIN32API: DECLARE INTEGER GetPrivateProfileString in win32api String,String,String, String @, integer,string DECLARE INTEGER WritePrivateProfileString in win32api String,String,String,String @, integer,string Aufruf der Funktion: Aufruf der Funktion: =GetPrivateProfileString(,, "", @, len( ), ) *-- Rückgabe der gültigen neuen Bufferlänge tcBuffer = left( tcBuffer, lnLen )
7
Wizards & Builders GmbH Registry Struktur der Registry unter Microsoft Windows NT
8
Wizards & Builders GmbH Bearbeiten der Registry REGEDIT.EXE REGEDIT.EXE Übersichtliche Darstellung unter NT Übersichtliche Darstellung unter NT REGEDT32.EXE REGEDT32.EXE Darstellung in getrennten Fenstern Darstellung in getrennten Fenstern Speichern von Bereichen der Registry Speichern von Bereichen der Registry Systemfunktionen Systemfunktionen Direktes Lesen/Schreiben von Einträgen Direktes Lesen/Schreiben von Einträgen
9
Wizards & Builders GmbH Aufbau der Registry
10
Wizards & Builders GmbH Aufbau und Sinn der Registry Hierarchische Gliederung von Konfigurationsinformationen Hierarchische Gliederung von Konfigurationsinformationen Einheitlicher Zugriff über Schlüssel (Hierarchie) Einheitlicher Zugriff über Schlüssel (Hierarchie) Definition von Name, Datentyp und Wert Definition von Name, Datentyp und Wert Zentrale Speicherung im OS Zentrale Speicherung im OS
11
Wizards & Builders GmbH Bereiche der Registry HKEY_LOCAL_MACHINE HKEY_LOCAL_MACHINE HKEY_USERS HKEY_USERS HKEY_DYN_DATA HKEY_DYN_DATA HKEY_CLASSES_ROOT HKEY_CLASSES_ROOT HKEY_CURRENT_USER HKEY_CURRENT_USER HKEY_CURRENT_CONFIG HKEY_CURRENT_CONFIG
12
Wizards & Builders GmbH Verkürzte Einträge HKEY_CLASSES_ROOT HKEY_CLASSES_ROOT entspricht HKEY_LOCAL_MACHINE\ Software\Classes entspricht HKEY_LOCAL_MACHINE\ Software\Classes HKEY_CURRENT_USER HKEY_CURRENT_USER entspricht HKEY_USERS\ für den aktuellen Anwender entspricht HKEY_USERS\ für den aktuellen Anwender HKEY_CURRENT_CONFIG HKEY_CURRENT_CONFIG entspricht HKEY_LOCAL_MACHINE\ Software bzw. \Hardware für aktuelle Konfiguration entspricht HKEY_LOCAL_MACHINE\ Software bzw. \Hardware für aktuelle Konfiguration
13
Wizards & Builders GmbH Tatsächliche Einträge HKEY_LOCAL_MACHINE HKEY_LOCAL_MACHINE Komplette Konfiguration für den Arbeitsplatz ohne Benutzerspezifisches Komplette Konfiguration für den Arbeitsplatz ohne Benutzerspezifisches HKEY_USERS HKEY_USERS Anwenderspezifische Daten Anwenderspezifische Daten HKEY_DYN_DATA HKEY_DYN_DATA Dynamische Daten - kein Bearbeiten oder Lesen möglich! Dynamische Daten - kein Bearbeiten oder Lesen möglich!
14
Wizards & Builders GmbH HKEY_LOCAL_MACHINE (1) HARDWARE HARDWARE wird beim Systemstart neu aufgebaut wird beim Systemstart neu aufgebaut siehe separate Aufstellung siehe separate Aufstellung SAM SAM Security Account Manager Security Account Manager Zugriff nur über Benutzermanager Zugriff nur über Benutzermanager SECURITY SECURITY ebenfalls kein direkter Zugriff ebenfalls kein direkter Zugriff
15
Wizards & Builders GmbH HKEY_LOCAL_MACHINE (2) SOFTWARE SOFTWARE Diverse Schlüssel von Microsoft Diverse Schlüssel von Microsoft Schlüssel anderer Hersteller (!) Schlüssel anderer Hersteller (!) siehe separate Aufstellung siehe separate Aufstellung SYSTEM SYSTEM Konfiguration Einheitentreiber Konfiguration Einheitentreiber Konfiguration Dienste von NT Konfiguration Dienste von NT siehe separate Aufstellung siehe separate Aufstellung
16
Wizards & Builders GmbH HKEY_LOCAL_MACHINE\HARDWARE DESCRIPTION DESCRIPTION Beim Start gesammelte Systeminformationen - änderbar aber bei nächstem Start überschrieben... Beim Start gesammelte Systeminformationen - änderbar aber bei nächstem Start überschrieben... DEVICEMAP DEVICEMAP Verweis auf Registry-Informationen Verweis auf Registry-Informationen RESOURCEMAP RESOURCEMAP Zuordnung Treiber zu IRQ/IO usw. Zuordnung Treiber zu IRQ/IO usw.
17
Wizards & Builders GmbH HKEY_LOCAL_MACHINE\SOFTWARE CLASSES = HKEY_CLASSES_ROOT CLASSES = HKEY_CLASSES_ROOT MICROSOFT = Programme/System MICROSOFT = Programme/System PROGRAM GROUPS (alt) PROGRAM GROUPS (alt) SECURE = Administratoren SECURE = Administratoren WIN 3.1 MIGRATION STATUS WIN 3.1 MIGRATION STATUS Windows 3.1. Migration Status INI-Files Windows 3.1. Migration Status INI-Files
18
Wizards & Builders GmbH Hinweis HKEY_CLASSES_ROOT Erstmal alle System-Endungen Erstmal alle System-Endungen Bei den meisten Einträgen Untereintrag mit Verweis CLSID Bei den meisten Einträgen Untereintrag mit Verweis CLSID CLSID mit Untereintrag mit Verweis auf TYPELIB CLSID mit Untereintrag mit Verweis auf TYPELIB TYPLIB enthält Interface- Beschreibung (OLE2-Viewer) TYPLIB enthält Interface- Beschreibung (OLE2-Viewer)
19
Wizards & Builders GmbH HKEY_LOCAL_MACHINE\SYSTEM CLONE CLONE Letzte lauffähige Version Letzte lauffähige Version CONTROLSETnnn CONTROLSETnnn verschiedene Control-Sets verschiedene Control-Sets CURRENTCONTROLSET CURRENTCONTROLSET aktuelle Konfiguration aktuelle Konfiguration SELECT SELECT Current, Default, Failed, LastKnownGood Current, Default, Failed, LastKnownGood SETUP SETUP
20
Wizards & Builders GmbH HKEY_LOCAL_MACHINE\SYSTEM\Controlset CONTROL CONTROL Einstellungen für Systemstart Einstellungen für Systemstart SERVICES SERVICES Einheitentreiber und Dienste Einheitentreiber und Dienste Diverse Treiber für nicht vorhandenes... Diverse Treiber für nicht vorhandenes... HARDWARE PROFILES (ggf.) HARDWARE PROFILES (ggf.) ENUM (Plug & Play) (ggf.) ENUM (Plug & Play) (ggf.)
21
Wizards & Builders GmbH Datentypen in der Registry REG_BINARYBinär/Hexawert REG_BINARYBinär/Hexawert REG_DWORD32-Bit-Wert Hex REG_DWORD32-Bit-Wert Hex REG_SZZeichenkette REG_SZZeichenkette REG_EXPAND_SZExpandiert REG_EXPAND_SZExpandiert z.B. für Verwendung von Platzhaltern z.B. für Verwendung von Platzhaltern Beispiel: %systemroot% Beispiel: %systemroot% REG_MULTI_SZMehrzeilig REG_MULTI_SZMehrzeilig
22
Wizards & Builders GmbH Dateien der Registry %systemroot%\PROFILES %systemroot%\PROFILES Defaultuser mit NTUSER.DAT-Vorlage Defaultuser mit NTUSER.DAT-Vorlage -Verzeichnis mit NTUSER.DAT -Verzeichnis mit NTUSER.DAT %systemroot%\SYSTEM32\CONFIG %systemroot%\SYSTEM32\CONFIG HKEY_LOCAL_MACHINE HKEY_LOCAL_MACHINE Default, SAM, Security, Software, System Default, SAM, Security, Software, System *. = Original, *.ALT = Backup, *.LOG = Protokoll, *.SAV = Zusatzinformationen *. = Original, *.ALT = Backup, *.LOG = Protokoll, *.SAV = Zusatzinformationen
23
Wizards & Builders GmbH Beispiele Registry-Schlüssel Einstellung Sommerzeit: Einstellung Sommerzeit: "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Cont rol\TimeZoneInformation" anwählen "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Cont rol\TimeZoneInformation" anwählen Bei der Position "StandardStart" im dritten Zahlenpaar die 09 durch 0A ersetzen Bei der Position "StandardStart" im dritten Zahlenpaar die 09 durch 0A ersetzen Einstellung Source-Control: Einstellung Source-Control: "HKEY_LOCAL_MACHINE\SOFTWARE\SourceControlProv ider\InstalledSCCProvider "HKEY_LOCAL_MACHINE\SOFTWARE\SourceControlProv ider\InstalledSCCProvider Einstellungen zu Visual FoxPro Einstellungen zu Visual FoxPro
24
Wizards & Builders GmbH Programmierung Registry Programmierung der Registry mit Microsoft Visual FoxPro
25
Wizards & Builders GmbH Registry-Funktionen in VFP =SYS(3056,1) =SYS(3056,1) SET OLEOBJECT ON/OFF SET OLEOBJECT ON/OFF -R-Switch -R-Switch Registry-Objekt Registry-Objekt GetAppPath GetAppPath GetLatestVersion GetLatestVersion GetApplication GetApplication
26
Wizards & Builders GmbH Programmierung (1) WINAPI-Funktionsdeklarationen: WINAPI-Funktionsdeklarationen: DECLARE INTEGER RegOpenKey IN Win32API ; INTEGER hKey, ;&& handle of open key STRING@lpszSubKey, ;&& address of name of subkey to open INTEGER@phkResult&& address of handle of open key DECLARE INTEGER RegCreateKey IN Win32API ; INTEGER hKey, ;&& handle of open key STRING@lpszSubKey, ;&& address of name of subkey && to create INTEGER@phkResult&& address of handle of open key DECLARE INTEGER RegCloseKey IN Win32API ; INTEGER hKey&& handle of open key DECLARE INTEGER RegDeleteKey IN Win32API ; INTEGER hKey, ;&& handle of open key STRING@lpszSubKey&& address of name of &&subkey to delete
27
Wizards & Builders GmbH Programmierung (2) DECLARE INTEGER RegDeleteValue IN Win32API ; INTEGERnHKey, ;&& handle of key STRINGcSubKey&& address of value name DECLARE INTEGER RegSetValueEx IN Win32API ; INTEGERhKey, ;&& handle of key to set value for STRINGlpValueName, ;&& address of value to set INTEGERReserved, ;&& reserved, set to 0 INTEGERdwType,;&& flag for value type STRINGlpData, ;&& address of value data INTEGERcbData&& size of value data DECLARE INTEGER RegQueryValueEx IN Win32API ; INTEGERhKey, ;&& handle of key to query STRINGlpszValueName, ;&& address of name of value to query INTEGERlpdwReserved, ;&& reserved INTEGER@lpdwType, ;&& address of buffer for value type STRING@lpbData, ;&& address of data buffer INTEGER @lpcbData&& address of data buffer size
28
Wizards & Builders GmbH Beispiel Solution-Samples * Die Library ist im Solution Sample enthalten set library to progs\reg_sol lcProgram= "" lcPfad= "" oReg= create( "FileReg") * GetApplication( cExtnKey,cAppKey, lServer) * GetAppPath( cExtension,cExtnKey,cAppKey,lServer) if oReg.GetAppPath( "DOC",@lcProgram,@lcPfad) # 0 returnendif ? lcProgram ? lcPfad
29
Wizards & Builders GmbH Konstanten für Registry #define HKEY_CLASSES_ROOT -2147483648 #define HKEY_CURRENT_USER -2147483647 #define HKEY_LOCAL_MACHINE -2147483646 #define REG_SZ 1 #define REG_OPTION_RESERVED 0 #define REG_CLASS_DEFAULT"" #define REG_SECURITY_DEFAULT 0 #define REG_OPTION_NON_VOLATILE 0 #define REG_OPTION_VOLATILE 1 #define REG_ALL_ACCESS63
30
Wizards & Builders GmbH Welche Fragen stellen sich? Verwendung der Registry eigentlich zwingend (!) Verwendung der Registry eigentlich zwingend (!) Anlegen / Lesen von lokalen Registry-Werten Anlegen / Lesen von lokalen Registry-Werten Hierarchie (!) Hierarchie (!)
31
Wizards & Builders GmbH Vielen Dank! Das waren die Themen: Aufbau von INI-Dateien Aufbau von INI-Dateien Verarbeiten von INI-Dateien Verarbeiten von INI-Dateien Bearbeiten der Registry Bearbeiten der Registry Bereiche der Registry Bereiche der Registry Die Bereiche im Einzelnen Die Bereiche im Einzelnen Werttypen in der Registry Werttypen in der Registry Dateien der Registry Dateien der Registry Beispiele für Registry-Keys Beispiele für Registry-Keys VFP-Funktionen für Registry VFP-Funktionen für Registry Betriebssystem-Funktionen für Registry Betriebssystem-Funktionen für Registry
32
Wizards & Builders GmbH Wenn Fragen bestehen: Wizards & Builders Methodische Software- Entwicklung GmbH Frankfurter Str. 21b 61476 Kronberg Tel.: 06173-950906 Fax: 06173-950907 CIS: 101605,175
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.