Die Registry ist unter Windows Betriebsystemen ein wichtiges Element, um Statusinformationen zu speichern und zu laden. Aufgabe Erstellen Sie ein Java-Programm, welches die Registry-Einträge bzgl. der Verknüpfungen verwaltet. Da dies direkt aus Java nicht möglich ist erstellen sie eine Dynamic Link Library (DLL) in C / C++, die Ihnen entsprechende Methoden zur Verfügung stellt, und greifen Sie mit Hilfe des Java Native Interface darauf zu. [...]
Inhaltsverzeichnis
- AUFGABENSTELLUNG
- Registry Abfrage mit Java (JNI)
- Grundlage
- Aufgabe
- Testkriterien
- LÖSUNG
- Allgemeine Lösungsreihenfolge
- Das Java-Programm
- Erläuterung
- Quelltext
- Die C++ Dynamic Link Library
- ADVAPI32.DLL
- long RegOpenKeyEx()
- long RegCloseKey()
- long RegEnumKeyEx()
- long RegQueryValueEx()
- long RegCreateKeyEx()
- long RegSetValueEx()
- Erläuterung
- void GetAlleErweiterungen()
- void neuerKey()
- long getErweiterung ()
- long* getUserKey ( )
- Quelltext
- Header
- CPP-Datei
- ALLGEMEINE HINWEISE
- QUELLEN
- SOFTWARE
Zielsetzung und Themenschwerpunkte
Die Arbeit befasst sich mit der Entwicklung eines Java-Programms zur Verwaltung von Registry-Einträgen unter Windows. Da Java keine direkten Zugriffe auf die Registry ermöglicht, wird eine C/C++ Dynamic Link Library (DLL) mit entsprechenden Methoden erstellt und über das Java Native Interface (JNI) angesprochen. Die Zielsetzung ist die Implementierung eines Programms, das die Anzeige aller Erweiterungen und die Hinzufügung neuer Verknüpfungen zur Registrierung ermöglicht.
- Java-Programmierung
- C/C++-Programmierung
- Dynamic Link Libraries (DLL)
- Java Native Interface (JNI)
- Registry-Zugriff unter Windows
Zusammenfassung der Kapitel
Das erste Kapitel behandelt die Aufgabenstellung und definiert die Anforderungen an das zu entwickelnde Java-Programm. Es werden die Grundlage, die Aufgabe und die Testkriterien für das Projekt erläutert. Das zweite Kapitel beschreibt die Lösungsstrategie und die Implementierung des Java-Programms und der C/C++ DLL. Es wird die allgemeine Lösungsreihenfolge vorgestellt und die einzelnen Komponenten des Programms, einschließlich der verwendeten API-Funktionen, detailliert erklärt. Die detaillierte Erklärung des Java-Quelltextes mit seinen Methoden und Funktionsweisen, sowie der C/C++ Quelltext, ist ebenfalls im Kapitel 2 enthalten.
Schlüsselwörter
Java, C/C++, Dynamic Link Library, DLL, Java Native Interface, JNI, Windows, Registry, API-Funktionen, Erweiterung, Verknüpfung, System.loadLibrary, RegOpenKeyEx, RegCloseKey, RegEnumKeyEx, RegQueryValueEx, RegCreateKeyEx, RegSetValueEx, neuerKey, getAlleErweiterungen, getUserKey
Häufig gestellte Fragen
Warum kann Java nicht direkt auf die Windows Registry zugreifen?
Java ist plattformunabhängig konzipiert und bietet daher standardmäßig keine nativen Methoden für systemspezifische Elemente wie die Windows Registry an.
Was ist das Java Native Interface (JNI)?
JNI ist eine Schnittstelle, die es Java-Code ermöglicht, mit Anwendungen und Bibliotheken zu interagieren, die in anderen Sprachen wie C oder C++ geschrieben wurden.
Welche Rolle spielt die Dynamic Link Library (DLL) in diesem Projekt?
Die in C++ erstellte DLL enthält die eigentlichen API-Funktionen (z.B. RegOpenKeyEx), die den Zugriff auf die Registry ermöglichen und von Java über JNI aufgerufen werden.
Welche Registry-Funktionen werden im Programm implementiert?
Das Programm ermöglicht das Öffnen von Schlüsseln, das Auslesen von Erweiterungen, das Erstellen neuer Keys und das Setzen von Werten für Verknüpfungen.
Welche Windows-Bibliothek wird für den Registry-Zugriff benötigt?
Die C++ DLL greift auf die ADVAPI32.DLL von Windows zu, die die notwendigen Funktionen für die Registrierungsverwaltung bereitstellt.
- Citation du texte
- Patrick Harms (Auteur), 2002, Windows Registry Abfrage mit dem Java Native Interface, Munich, GRIN Verlag, https://www.grin.com/document/67541