reg query probleme zeichenfolge wert auslesen
per "reg query " den wert einer zeichenfolge auslesen ...
Hallo,
bin neu hier und hab eine frage, hab auch schon das forum einwenig durch geblättert aber keine antwort gefunden...
Unzwar möchte ich einen Wert aus einer zeichenfolge auslesen. Krieg das iwie nicht hin
So hatte ich mir das gedacht, aber funktioniert nicht...
Ich möchte den Wert "C:\test" auslesen, wenn dieser vorhanden ist dann soll er halt zu "exist" springen, wenn nicht dann halt zu "error".
Würde mich über jede hilfe freuen..
Michi
Hallo,
bin neu hier und hab eine frage, hab auch schon das forum einwenig durch geblättert aber keine antwort gefunden...
Unzwar möchte ich einen Wert aus einer zeichenfolge auslesen. Krieg das iwie nicht hin
So hatte ich mir das gedacht, aber funktioniert nicht...
#######################
@echo off
reg query HKEY_LOCAL_MACHINE\software\Test\Test2 /v path /s C:\test
if not errorlevel 1 goto exist
:error
echo regkey fehlerhaft
pause
exit
:exist
echo regkey vorhanden
pause
exit
#######################
Würde mich über jede hilfe freuen..
Michi
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 108276
Url: https://administrator.de/contentid/108276
Ausgedruckt am: 25.11.2024 um 22:11 Uhr
11 Kommentare
Neuester Kommentar
Servus zurück.
Endlich mal wieder jemand, mit guter Kinderstube
Unzwar möchte ich einen Wert aus einer zeichenfolge auslesen.
Krieg das iwie nicht hin
So hatte ich mir das gedacht, aber funktioniert nicht...
..dann mach es z.B so herum:
edit
wobei es "so" natürlich eleganter wäre
/edit
Gruß
bin neu hier und hab eine frage, hab auch schon das forum einwenig
durch geblättert aber keine antwort gefunden...
durch geblättert aber keine antwort gefunden...
Endlich mal wieder jemand, mit guter Kinderstube
Unzwar möchte ich einen Wert aus einer zeichenfolge auslesen.
Krieg das iwie nicht hin
So hatte ich mir das gedacht, aber funktioniert nicht...
rem @echo off - zum testen
reg query HKLM\software\Test\Test2 /v path |find "C:\test"
if errorlevel 0 goto exist
:error
echo regkey fehlerhaft
pause
exit
:exist
echo regkey vorhanden
pause
edit
wobei es "so" natürlich eleganter wäre
rem @echo off - zum testen
reg query HKLM\software\Test\Test2
if errorlevel 0 goto exist
:error
echo regkey fehlerhaft
pause
exit
:exist
echo regkey vorhanden
@reg query HKLM\software\Test\Test2 /v path |find "C:\test"
@if errorlevel 0 echo und hat auch den richtigen Inhalt
pause
Gruß
Zitat von @Michi90:
Hey,
Großes danke erstmal
aber das funktioniert nicht wirklich...
wenn ich jetzt in meiner regestrie schreiben z.b.:
C:\test8
würde er mir trotzdem sagen " und hat den richtigen Inhalt
" obwohl der ja nicht "test" sondern "test8" heißt.
Hey,
Großes danke erstmal
aber das funktioniert nicht wirklich...
wenn ich jetzt in meiner regestrie schreiben z.b.:
C:\test8
würde er mir trotzdem sagen " und hat den richtigen Inhalt
" obwohl der ja nicht "test" sondern "test8" heißt.
Dann erweiter das um ein "\" in Zeile 12.
rem @echo off - zum testen
reg query HKLM\software\Test\Test2
if errorlevel 0 goto exist
:error
echo regkey fehlerhaft
pause
exit
:exist
echo regkey vorhanden
@reg query HKLM\software\Test\Test2 /v path |find "C:\test\"
@if errorlevel 0 echo und hat auch den richtigen Inhalt
pause
..obwohl dann wieder alle unterordner von "c:\test" auch gefunden würden.
Aber ich denke, du machst dir da Gedanken, die du nicht wirklich brauchst.
HLKM das liegt doch in Admin Hand
Und wenn es wirklich "so" wichtig sein sollte - mach das ganze einmalig mit einem System, das Garantiert deinen Wert hat.
@reg query HKLM\software\Test\Test2 /v path >\\server\freigabe\pfad_richtig.ini
und dann ins Script rein:@reg query HKLM\software\Test\Test2 /v path >%temp%\regkey.tmp
@FC %temp%\regkey.tmp \\server\freigabe\pfad_richtig.ini
@if %errorlevel%==0 echo Einmal regkey mit alles komplett und RISCHDISCH
Gruß
also ich glaub du hast mich da bisschen falsch verstanden....
das "C:\test\ ist ein wert in einer zeichenfolge bei der win reg.
Ja - dachte ich mir das "C:\test\ ist ein wert in einer zeichenfolge bei der win reg.
und mein programm soll nur weiter laufen wenn in dieser zeichenfolge steht z.b. "c:\test"
sobald da iwas anderes steht oder erst garnicht vorhanden ist soll das programm abbrechen...
sobald da iwas anderes steht oder erst garnicht vorhanden ist soll das programm abbrechen...
weißt wie ?
Ich weiß alles Und genau das macht es ja - aber da da nichts ist, wohin es weiterlaufen soll, macht es das auch nicht
Hast du denn wirklich mal probiert, was ich geschrieben habe?
Ich habe fast genau das gleiche vorher durchexerziert, jedoch mit einem anderen Schlüssel und das ist bei mir gelaufen.
Gruß
edit:
naja - ich mach sowas mit einer anderen Software, die VBS ähnlich ist - was daran nun kompliziert ist?
/edit
? bisschen zu kompliziert?
weniger ist mehr - aber in dem Fall auch unsensibler.
2-3 Zeiler:
..und das "mag" ich nicht, denn wenn es unter W2k läuft, wird reg.exe nicht gefunden, ergo auch Errorlevel <>0, obwohl evtl. der Key vorhanden wäre.
Ich habs da lieber eindeutiger, aber funktionieren tutet es.
gruß
weniger ist mehr - aber in dem Fall auch unsensibler.
2-3 Zeiler:
reg query HKLM\software\Test\Test2 /v path |find "C:\test\"
if not errorlevel 0 goto end
echo und hier wäre dann der fehlende Teil
:end
..und das "mag" ich nicht, denn wenn es unter W2k läuft, wird reg.exe nicht gefunden, ergo auch Errorlevel <>0, obwohl evtl. der Key vorhanden wäre.
Ich habs da lieber eindeutiger, aber funktionieren tutet es.
gruß
Nochmal ganz langsam....
Mal als Beispiel einen Wert, den jeder auf einem deutschen System nachvollziehen kann....
gruß
Mal als Beispiel einen Wert, den jeder auf einem deutschen System nachvollziehen kann....
reg query HKLM\software\Microsoft\Windows\CurrentVersion /v ProgramFilesDir |find /i "C:\programme"
if %errorlevel%==0 Echo naja war ja klar.
reg query HKLM\software\Microsoft\Windows\CurrentVersion /v ProgramFilesDir |find /i "x:\programme"
if %errorlevel%==1 Echo naja war ja auch klar.
gruß
Servus,
"FC" war nur ein Schnellschuss - mit Reg Compare geht es aber auch.
Ps: Es wird nicht die version von cmd mitgeschrieben, sondern die Version von reg.exe
Und nein - ich hab jetzt "frei" und damit auch MS frei - mein Mac kennt die Befehle nicht
Gruß
Reg "befehl" /?
"FC" war nur ein Schnellschuss - mit Reg Compare geht es aber auch.
Ps: Es wird nicht die version von cmd mitgeschrieben, sondern die Version von reg.exe
Und nein - ich hab jetzt "frei" und damit auch MS frei - mein Mac kennt die Befehle nicht
Gruß
Reg "befehl" /?