Piszę skrypt wsadowy, aby sprawdzić, czy istnieje wartość klucza rejestru i mam pewne problemy.
Kiedy bezpośrednio określę klucz do wyszukania, %ERRORLEVEL%
aktualizuje się odpowiednio. Poniższy przykład odzwierciedla wartość 1 zgodnie z oczekiwaniami.
REG QUERY HKLM /v NONEXISTENT_KEY
ECHO %ERRORLEVEL%
Sprawdzam jednak istnienie wiązki kluczy w pliku, więc zapętlam go FOR
. Następujące echo 0 z jakiegoś powodu, którego nie rozumiem.
FOR /F "tokens=1-2 delims=," %%A IN (myFile.txt) DO (
REG QUERY "%%A" /v "%%B"
ECHO %ERRORLEVEL%
Uwaga: strukturę pliku, który zapętlam, pokazano w następującym przykładzie:
HKEY_LOCAL_MACHINE\PATH\TO\KEY,SOME VALUE
ECHO !ERRORLEVEL!
?