C
casu4711
Benutzer
Threadstarter
- Dabei seit
- 13.01.2017
- Beiträge
- 51
Hallo allerseits.
ich bin im Begriff eine Batch zu schreiben für die halbautomatische Registrierung unserer PC's. Dazu gibt es ein Verzeichnis mit Textdateien für jeden PC und den entsprechend für diesen PC zur Verfügung stehenden Volumenlizenzen. Zu erst wird die entsprechende Datei gesucht und jenachdem was für ein BS angegeben wird, wird die Seriennummer rausgelesen. Dieses funktioniert soweit auch schon ganz gut, zumindest wenn Pro und Ent vorhanden sind. Sofern nur eine Pro drin steht und zuvor Ent ausgewählt wurde, steht Seriennummer gefunden (nichts)
Wie kann ich in einem solchen Fall erreichen, dass geschrieben wird, für Ent ist keine vorhanden, bzw. umgekehrt, und dann zurück zur Abfrage, bekomme es einfach nicht hin, die Textzeilen in der txt sehen exemplarisch so aus:
Das entsprechend auf das wichtigste gekürzte Listing schaut so aus:
würde mich über Hilfestellung sehr freuen,
Danke schon mal und schöne Woche noch
lg
ich bin im Begriff eine Batch zu schreiben für die halbautomatische Registrierung unserer PC's. Dazu gibt es ein Verzeichnis mit Textdateien für jeden PC und den entsprechend für diesen PC zur Verfügung stehenden Volumenlizenzen. Zu erst wird die entsprechende Datei gesucht und jenachdem was für ein BS angegeben wird, wird die Seriennummer rausgelesen. Dieses funktioniert soweit auch schon ganz gut, zumindest wenn Pro und Ent vorhanden sind. Sofern nur eine Pro drin steht und zuvor Ent ausgewählt wurde, steht Seriennummer gefunden (nichts)
Wie kann ich in einem solchen Fall erreichen, dass geschrieben wird, für Ent ist keine vorhanden, bzw. umgekehrt, und dann zurück zur Abfrage, bekomme es einfach nicht hin, die Textzeilen in der txt sehen exemplarisch so aus:
- Win10 Pro aaaaa-bbbbb-ccccc-ddddd-eeeee
- Win10 Ent fffff-ggggg-hhhhh-iiiii-jjjjj
Das entsprechend auf das wichtigste gekürzte Listing schaut so aus:
Code:
@ECHO off
SETLOCAL
CD /D %~dp0
:ABFRAGE
SET /p pcname=PC Name:
ECHO Welche Version soll lizensiert werden?
ECHO -------------------------------------------------
ECHO [1] Win Ent [2] Win pro (1/2)
ECHO -------------------------------------------------
choice /c 12 /M "Ihre Antwort" /N
IF errorlevel 1 SET BS=Win10En
IF errorlevel 2 SET BS=Win10Pro
ECHO %BS%
ECHO %BS% > %~dp0\tmp\BS.txt
ECHO.
PAUSE
CLS
ECHO %bs%
ECHO Zusammenfassung
ECHO ............................
ECHO Sie haben folgendes gewaehlt:
ECHO PC-Name: %pcname%
ECHO Betiebssystem: %bs%
ECHO -------------------------------------------------
ECHO Alles korrekt? (j/n)
ECHO -------------------------------------------------
ECHO.
choice /c jn /M "Ihre Antwort" /N
IF errorlevel 2 goto Abfrage
ECHO.
CLS
:REGISTRIERUNG
ECHO %BS%
::PCname aus pcname.txt holen
cd c:\>nul 2>&1
cd c:\LIZ>nul 2>&1
FOR /F "tokens=*" %%F IN ('findstr /S /M /C:"%pcname%" *') DO (
SET "dat=%%F"
)
ECHO %Dat%
Pause
IF %BS%==Win10En (
FOR /F "tokens=4" %%F IN ('findstr /C:"Win10 Ent" %dat%') DO (
SET "dat2=%%F"
)
)
IF %bs%==Win10Pro (
FOR /F "tokens=4" %%F IN ('findstr /C:"Win10 Pro" %dat%') DO (
SET "dat2=%%F"
)
) ELSE (
echo bla
)
ECHO Seriennummer gefunden: %dat2%
ECHO.
ECHO Lizenzdatei: %dat%
ECHO Lizenzdatei wird verknuepft
PAUSE
würde mich über Hilfestellung sehr freuen,
Danke schon mal und schöne Woche noch
lg