poopsie
Goto Top

Teils bekannten Registry Key auslesen

Hallo zusammen,

ich hätte eine kleine Frage bezüglich auslesen von Registry Keys in einem Netzwerk.
Ich möchte zu einem Programm die Versionsnummer herausfinden.
Leider sind im Netzwerk viele, viele Versionen des Programms auf den Clients installiert.

Der Registry Key sieht bei einer 9.3er Version z.B. so aus:
QUERY HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-7AD7-1031-7B44-A92000000001}

bei einer 9.1
QUERY HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-7AD7-1031-7B44-A91000000001}

Der Knackpunkt kommt dann bei einer 10er
QUERY HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-7AD7-1031-7B44-AA0000000001}

Hier unterscheidet sich der letzte Teil. Ist es möglich einen Registry Key mit Jokerzeichen auszulesen.
Also in etwas lies alles aus was mit QUERY HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-7AD7-1031-7B44-* beginnt ?

Ich möchte diesen Key dann in einer Variable weiterverarbeiten.

Vielleicht kann mir jemand helfen ?

Danke und Grüße

Content-Key: 162141

Url: https://administrator.de/contentid/162141

Ausgedruckt am: 19.03.2024 um 02:03 Uhr

Mitglied: Snowman25
Snowman25 07.03.2011 um 10:02:05 Uhr
Goto Top
Hallo @Poopsie,

Hättest gleich sagen können, dass es um den Adobe Reader geht face-wink

Soweit ich das unter XP getestet habe, kann man nicht mit Jokerzeichen in der Registry suchen. Auch der /v-Switch sucht bloß die aktuelle Ebene ab, und keine tieferen.
Hier muss also wohl eher ein kleines Progrämmchen nachhelfen.
btw: Ich hab Version 9.4.2 installiert. Hier ist der Key dann dementsprechend {AC76BA86-7AD7-1031-7B44-A94000000001}

Der Signifikante Teil ist dementsprechend die 2 und 3 Stelle des letzten Teils.
Um alle Schlüssel aufzuzählen, welche den geichbleibenden Teil davor enthalten, kannst du das hier verwenden:
reg QUERY HKLM\Software\Microsoft\Windows\CurrentVersion\uninstall|findstr "{AC76BA86-7AD7-1031-7B44-A"
Gruß
Snow
Mitglied: Poopsie
Poopsie 07.03.2011 um 11:11:51 Uhr
Goto Top
Hallo Snow,

wollte keine Werbung machen face-smile

Danke für deine Hilfe, leider stehe ich gearde auf dem Schlauch.
Habe mal was zusammengebastelt, aber leider funktioniert das ganze nicht so wirklich.
Suchen funktioniert, habe ich testweise in einer separaten Zeile gebastelt aber das zuweise der Suche zu einer Variablen funktioniert leider nicht.

For /F "tokens=7 delims=\" %%A in ('REG QUERY %registry_pfad%|findstr "{AC76BA86-7AD7-1031-7B44-A"') Do SET adobe_schluessel=%%A

Eine Idee ?
Mitglied: Snowman25
Snowman25 07.03.2011 um 11:42:52 Uhr
Goto Top
nochmal Hallo Poopsie,
Porbier mal diesen Schnipsel aus. Der sollte funktionieren
reg QUERY %registry_pfad%|findstr "{AC76BA86-7AD7-1031-7B44-A">adbreg.tmp  
for /F "tokens=7 delims=\" %%A in (adbreg.tmp) do set adobe_schluessel=%%A  
del /F adbreg.tmp

Gruß
Snow
Mitglied: Poopsie
Poopsie 07.03.2011 um 11:51:31 Uhr
Goto Top
Mein Held !!!!!!

Danke dir.

Grüße
Mitglied: bastla
bastla 07.03.2011 um 14:17:28 Uhr
Goto Top
... bzw ohne Temp-Datei einfach
<code type"plain">for /F "tokens=7 delims=\" %%A in (reg QUERY %registry_pfad%^|findstr "{AC76BA86-7AD7-1031-7B44-A") do set "adobe_schluessel=%%A"

Grüße
bastla