derigeljohnwo

Unterordner in der Registry mit Batch Datei auslesen und prüfen

Hallo.

Ich möchte prüfen, ob auf einem System mindestens das .Net-Framework 2 installiert ist. Dies soll über eine Batch-Datei geschehen.

Unter HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\ sind die installierten Versionen aufgelistet.

In meinem Fall sind das die Ordner:

- CDF
- v2.0.50727
- v3.0
- v3.5
- v4
- v4.0

Es würde mir also genügen wenn ich die einzelnen Ordnernamen hintereinander auslese und sobald die ersten beiden Zeichen "v2" oder größer sind soll programm1 gestartet werden ... ansonsten programm2

mit dem code:

@ECHO OFF
FOR /F "tokens=2* delims=	 " %%A IN ('REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727" /v Version') DO SET netVers=%%B  

set variable=%netVers:~0,1%
echo Die aktuelle .net Version: %variable%

@pause

erhalte ich zwar als ergebis "2" aber nur da ich ja den genauen schlüssel kenne.

Naja, falls noch Fragen offen sein sollten stellt sie bitte face-smile

LG

DerIgelJohnWo
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 191424

Url: https://administrator.de/forum/unterordner-in-der-registry-mit-batch-datei-auslesen-und-pruefen-191424.html

Ausgedruckt am: 23.04.2025 um 22:04 Uhr

bastla
bastla 18.09.2012 aktualisiert um 18:36:16 Uhr
Goto Top
Hallo DerIgelJohnWo und willkommen im Forum!

Darf ich Dich gleich vorweg auf die für das Posten von "Code" vorgesehene Formatierung hinweisen (lässt sich auch nachträglich noch durchführen face-wink)?
Du könntest das so versuchen:
set "Version="  
for /f "skip=2 delims=" %%i in ('REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP"') do if "%%~ni" geq "v2" set "Version=%%~ni"  
if defined Version (Programm1) else (Programm2)
Falls die Version mindestens "v2" ist, kannst Du auch zusätzlich die Versionsnummer auch per "echo %Version%" ausgeben ...

Grüße
bastla
DerIgelJohnWo
DerIgelJohnWo 18.09.2012 um 17:40:45 Uhr
Goto Top
Super ... genau das was ich gebraucht habe ... Daumen hoch