Registry-Zugriff auch einfacher? (ORACLE_HOME auslesen)

Status
Nicht offen für weitere Antworten.

kasi1983

Mitglied
Hallo zusammen,

Ich bin mir nicht sicher, ob ich nun richtig gepostet habe - mein Problem hat zum einen mit der Windows-Registry zu tun, und zum anderen mit der Oracle Datenbank... ???:L

Jedenfalls bin ich dabei, in Java eine Art Setup für ein komplexes Oracle-Index-Framework zu erstellen. Ich muss dabei u.a. eine Datei im Verzeichnis $ORACLE_HOME\NETWORK\ADMIN verändern.

Dazu müsste ich die ORACLE_HOME-Variable auslesen. Wie ich feststellen musste, ist das nicht so einfach, wie bei Windows-Umgebungsvariablen (z.B. %PROGRAMFILES% etc.).
Scheinbar lässt sie sich nur aus der Registry fischen, sie steht bei mir in HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb10g_home1

Wobei ich persönlich die schreckliche Gewissheit habe, dass "KEY_OraDb10g_home1" wohl nicht auf jedem System so heißen wird... :noe: was die Sache nur noch weiter verkompliziert. Aber das ist im Moment das kleine Problem.

Meine Fragen lauten jetzt:

1) Kann man die ORACLE_HOME evtl. noch woanders auslesen?

2) Falls nein - gibt es eine Möglichkeit, dieses einen Registry-Eintrag auszulesen, ohne dass ich diesen riesen Overkill mit den DLLs (z.B. in jRegistryKey, aber auch den meisten anderen Paketen, mit denen man auf die Registry zugreifen kann) betreiben muss? Ich will doch nur diesen einen dummen Pfad haben!

Mit verzweifelten Grüßen
Kerstin
 

kasi1983

Mitglied
Also, ich habe jetzt noch weiter experimentiert.

Bei meiner Lösung habe ich nun die Registry ganz außen vor lassen können. Ich poste sie hier jetzt nur der Vollständigkeit halber - mir ist bewusst, dass es wohl keinen interessieren wird (und dass es eher Offtopic ist), aber evtl. hat ja doch irgendwann noch jemand dasselbe Problem.

Man kann in SQLPlus folgenden Befehl benutzen: @.[%ORACLE_HOME%]

Er ist nicht dazu gedacht, den Wert der Variable zurückzugeben, deshalb gibt er folgende Fehlermeldung aus

SP2-0310: unable to open file ".[C:\oracle\product\10.1.0\Db_1].sql"

und enthält damit den Oracle-Home-Pfad. Den Befehl also flugs in eine SQL-Datei gespeichert:

Code:
@.[%ORACLE_HOME%];
quit;


Und jetzt kommt mein Java-Code.


Code:
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class ReadOracleHome {

	public static void main(String[] args) {

		String cmdReturn = "", file = "";

		try {
		        Process p = Runtime.getRuntime().exec(
			"cmd /c sqlplus user/passwort@dbname @readoraclehome.sql");

		        BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream()));

			while ((cmdReturn = in.readLine()) != null) {
			    file += cmdReturn;
			}

			int start = file.indexOf("[");
			int end = file.indexOf("].sql");

			String path = file.substring(start + 1, end);

			System.out.println(path);

		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

Wahrscheinlich wird sich ein gute Programmierer bei diesem Code erst mal an den Kopf fassen und mich für blöd halten. Ist mir aber egal ;-)
Und - Ja, ich weiß, dass man nicht "catch (Exception..." machen soll. Es ist doch bloß zum Testen.

Kerstin
 

thE_29

Top Contributor
Um Registry Einträge auszulesen kann man regedit /e und dann hinten den Schlüssel Namen angeben!

Einspielen mit /s und reg Datei!

Maybe brauchst du es vielleicht doch mal!
 

kasi1983

Mitglied
Hallo,

das Einspielen habe ich schon mal benutzt - das funktioniert prima.
Habe jetzt auch mal regedit /e getestet, aber so wie ich das bisher mitbekommen habe, kann man damit nur einen ganzen Schlüssel (also quasi diese Ordner - ich weiß immer die genauen Bezeichnungen nicht ;-) ) exportieren - einen einzelnen Eintrag (Zeichenfolge, Binärwert, DWORD....) scheinbar nicht.
Na ja, man könnt's aus der erstellten Datei irgendwie rausfiltern...

Danke für diese Idee. :applaus: Im Moment kann ich sie leider nicht verwenden (-> weil ja der Schlüssel unterschiedilch sein kann, z.B. bei einer älteren Oracle-Version...), aber es ist gut zu wissen für die Zukunft.

Kerstin
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Windows Registry Zugriff Allgemeine Java-Themen 4
S Zugriff auf Windows-Registry Allgemeine Java-Themen 8
R -jar der Windows-Registry hinzufügen Allgemeine Java-Themen 1
M Registry Autostart Eintrag mit Java erstellen (über Windows cmd) Allgemeine Java-Themen 7
M Registry Autostart Eintrag ertstellen mit Java (Runtime.getRuntime().exec()) Allgemeine Java-Themen 0
F Registry Ordner durchlaufen Allgemeine Java-Themen 1
B Installer, der in die Win-Registry schreibt Allgemeine Java-Themen 10
M Wie mit Jacob die Registry auslesen? Allgemeine Java-Themen 0
D Variablen zur Laufzeit global speichern (Registry Pattern?) Allgemeine Java-Themen 6
E CMD Registry Key für Windows 7? Allgemeine Java-Themen 9
Dit_ Registry, Preferences | Name des Knotens ändern. Allgemeine Java-Themen 2
M Autostart: Registry oder Link? Allgemeine Java-Themen 6
S Problem mit Registry Allgemeine Java-Themen 3
C Registry auslesen mit Java Allgemeine Java-Themen 13
N Registry Pattern Allgemeine Java-Themen 7
P windows registry lesen Allgemeine Java-Themen 3
conan2 Windows-Registry lesen und schreiben Allgemeine Java-Themen 8
M Registry mit jRegistryKey auslesen Allgemeine Java-Themen 7
M swing und windows registry Allgemeine Java-Themen 11
C REG_BINARY Type in Windows Registry ausgeben ? Allgemeine Java-Themen 4
C Registry schreiben und lesen unter Win XP ? Allgemeine Java-Themen 2
LucasGlockner Effizienter byte-Zugriff auf ein long[]-Array Allgemeine Java-Themen 8
W Klassen Zugriff auf ein Textfile aus allen Klassen. Allgemeine Java-Themen 2
izoards Zugriff auf gemeinsame Ressource (CSV-File) Allgemeine Java-Themen 3
S Java Zugriff auf Netzwerklaufwerk Allgemeine Java-Themen 1
sascha-sphw Java 9 module Zugriff auf eine resource einer anderen JAR Allgemeine Java-Themen 0
KeexZDeveoper Zugriff auf Methoden vom Server Allgemeine Java-Themen 7
O Zugriff auf mySQL ohne JDBC Allgemeine Java-Themen 3
P Element einer Liste wurde hinzugefügt, aber es gibt keinen Zugriff Allgemeine Java-Themen 2
B Maven Zugriff auf files aus einem kompilierten jar Allgemeine Java-Themen 15
S Zugriff auf jUnit Test Suite Runner-Instanzen innerhalb von Test Classes Allgemeine Java-Themen 7
W Zugriff auf Objektvariablen vs. Übergabe Allgemeine Java-Themen 3
J Zugriff auf erstellte Objekte einer Klasse von einer Klasse ausserhalb Allgemeine Java-Themen 3
Tommy Nightmare HTTP Zugriff auf Internetseite im Loginbereich Allgemeine Java-Themen 5
H Zugriff auf PHP Allgemeine Java-Themen 4
B DB-Zugriff einer Webanwendung funktioniert nicht mit Java 7 Allgemeine Java-Themen 2
M WebService - Zugriff auf Webservice Methode über Browser Allgemeine Java-Themen 1
O JNA Zugriff auf Funktion aus DLL Allgemeine Java-Themen 0
O Zugriff auf Windows Zertifikatstore Allgemeine Java-Themen 2
M Kein Zugriff auf microSD Karten Allgemeine Java-Themen 4
T Zugriff auf Datenbank Allgemeine Java-Themen 1
J Zugriff auf IMAP GMail Konto scheitert. Allgemeine Java-Themen 2
P Frontend- Zugriff auf WS- Backend Allgemeine Java-Themen 0
U Zugriff auf Datei sperren Allgemeine Java-Themen 5
N Best Practice Semi-Synchronized Zugriff Allgemeine Java-Themen 0
C Zugriff auf Event felder Allgemeine Java-Themen 0
M Threads synchroner Zugriff (add/delete/read) auf eine Liste Allgemeine Java-Themen 6
F Zugriff Verweigert bei Kopieroperation? Allgemeine Java-Themen 4
T JNI: kein Zugriff auf VM in Callback-Methode eines Windows-Hooks Allgemeine Java-Themen 3
S Dynamischer Zugriff Allgemeine Java-Themen 4
Minonos Einem Programm Zugriff auf bestimmte Ordner geben Allgemeine Java-Themen 5
E Zugriff auf Dateien im Filesystem überwachen Allgemeine Java-Themen 5
H Programierstil: static - Zugriff vs. Staticzugriff Allgemeine Java-Themen 24
V Zugriff auf den Objekterzeuger? Allgemeine Java-Themen 4
M Zugriff zweier Threads auf diesselbe Methode Allgemeine Java-Themen 16
B Zugriff auf eine HashMap Allgemeine Java-Themen 4
B JApplet Zugriff auf Local Storage des Browser? Allgemeine Java-Themen 2
D Zugriff auf Array-Liste Allgemeine Java-Themen 19
M gleichzeitiger Zugriff auf eine Textdatei Allgemeine Java-Themen 6
D Eclipse Kein Zugriff auf Inhalt einer referenzierten .jar Allgemeine Java-Themen 5
B synchronisierter zugriff auf Objekt Allgemeine Java-Themen 6
nutellastulle Zugriff, Übergabe, Bearbeitung und Ausgabe von Jlist Allgemeine Java-Themen 6
U Große Liste von Strings mit indiziertem Zugriff Allgemeine Java-Themen 31
J XML Element Zugriff Allgemeine Java-Themen 4
P Daten kopieren mit nio - Zugriff verweigert Allgemeine Java-Themen 8
M Klassen Zugriff auf getMethode ohne Klasse zu erzeugen Allgemeine Java-Themen 6
A Input/Output Applet-Zugriff auf PHP-Schnittstelle (externer Server) Allgemeine Java-Themen 22
H Vererbung Abgeleitete Klassen und Zugriff Allgemeine Java-Themen 2
C Probleme mit dem Zugriff auf private Methode per reflection Allgemeine Java-Themen 2
J Zugriff auf Poker-Client Fenster Allgemeine Java-Themen 14
C Zugriff auf private Methode per reflection geht nicht mehr Allgemeine Java-Themen 3
S Zugriff auf innere Klasse Allgemeine Java-Themen 3
D Kein Zugriff auf WebService ausser localhost Allgemeine Java-Themen 4
Sonecc Zugriff auf Class File einer anderen Jar während der Laufzeit Allgemeine Java-Themen 2
J Zugriff auf Dateien auf einem shared Folder? Allgemeine Java-Themen 3
H Zugriff auf VBA in Java Allgemeine Java-Themen 2
Haave Audio Device Unavailable: Kein gleichzeitiger Zugriff auf Soundsystem möglich Allgemeine Java-Themen 7
G Letzter Zugriff auf Datei Allgemeine Java-Themen 5
C java.io.FileNotFoundException: (Zugriff verweigert) Allgemeine Java-Themen 14
O Zugriff auf Serielle Schnittstelle - Keine Ports gefunden. Allgemeine Java-Themen 8
C Webstart: Zugriff auf lokale Dateien? Allgemeine Java-Themen 2
X Zugriff auf ComboBoxen in Hauptklasse von zweiter Klasse aus Allgemeine Java-Themen 8
J Zugriff auf gemeinsame Funktionen Allgemeine Java-Themen 4
Airwolf89 Zugriff auf ArrayList<ArrayList> Allgemeine Java-Themen 3
Airwolf89 Zugriff auf Werte in ArrayList<ArrayList> Allgemeine Java-Themen 4
T Zugriff zwischen Klassen für repaint Allgemeine Java-Themen 7
N Zugriff auf eine Referenzvar. Allgemeine Java-Themen 3
S Zugriff auf Klasse Allgemeine Java-Themen 4
Meldanor Mehrdimensionale Arrays : Zugriff auf n-tes Array Allgemeine Java-Themen 5
E JNA:Zugriff auf Common-Block von Fortran bzw. Struct in C Allgemeine Java-Themen 2
T Zugriff auf Singleton verkürzen - Namespaces?? Allgemeine Java-Themen 20
L Zugriff auf ein Objekt mit mehreren Threads Allgemeine Java-Themen 11
Airwolf89 dynamischer Zugriff auf Variablen/ Objekte Allgemeine Java-Themen 4
S Zugriff auf einzelne Bildpunkte Allgemeine Java-Themen 3
D Referenzen weiterreichen vs. statischer Zugriff Allgemeine Java-Themen 3
V Zugriff auf Default-Package? Allgemeine Java-Themen 6
P RegeEx-Problem: Zugriff auf group Allgemeine Java-Themen 2
M Zugriff auf Parallel-Schnittstelle Allgemeine Java-Themen 2
B Zugriff mit einem Applet auf den Datenträger Allgemeine Java-Themen 11
S Innere Klasse: Zugriff auf äußere Variable Allgemeine Java-Themen 5

Ähnliche Java Themen

Neue Themen


Oben