boory01
Goto Top

Batch -Menü - bei "Enter" soll ohne Auswahl nichts ausgeführt werden

Hallo Gemeinde,

bei einem Batch-Menü wird bei mir bei Drücken der ENTER-Taste sofort der erste Menüpunkt ausgeführt,
obwohl keine Auswahl getroffen wurde. Dies soll aber erst bei Selektion passieren. Hier das Menü:
Bei Auswahl aller anderen Zeichen, die NICHT im Menü vorbelegt sind, wird ebenfalls zum 1. Punkt gesprungen,

Wie kann das verhindert werden?

@echo off
:MENU
echo take your choice

echo AW1 - 1
echo AW2 - 2
echo AW3 - 3
echo AW4 - 4
echo quit - x or X

set asw=0
set /P asw=Bitte Auswahl eingeben:
if %asw%==1 goto AW1
if %asw%==2 goto AW2
if %asw%==3 goto AW3
if %asw%==4 goto AW4
if %asw%==X goto:EOF
if %asw%==x goto:EOF

:AW1
echo.
echo.
echo AW1
echo.
echo.

GOTO MENU

:AW2
echo.
echo.
echo AW2
echo.
echo.

GOTO MENU

echo.
echo.
:AW3
echo.
echo.
echo AW3
echo.
echo.

GOTO MENU

echo.
echo.
:AW4
echo.
echo.
echo AW4

GOTO MENU

:EOF

Content-ID: 291253

Url: https://administrator.de/forum/batch-menue-bei-enter-soll-ohne-auswahl-nichts-ausgefuehrt-werden-291253.html

Ausgedruckt am: 23.12.2024 um 05:12 Uhr

114757
Lösung 114757 18.12.2015 aktualisiert um 13:35:43 Uhr
Goto Top
Moin,
vor dem ersten Punkt noch einen Sprung setzen face-wink entweder zurück ins Menü oder Skript beenden ...
goto MENU
:AW1
Gruß jodel32

p.s. das :EOF ganz am Ende ist überflüssig face-smile

statt set /p kannst du auch choice einsetzen das piept bei einer falschen Eingabe und macht erst weiter wenn eine gültige Auswahl getroffen wurde.
114757
Lösung 114757 18.12.2015 aktualisiert um 13:35:45 Uhr
Goto Top
Für ein einfaches Beispiel wie man das mit choice macht guckst du hier:
Batch Datei Menü programmieren
Boory01
Boory01 18.12.2015 um 13:35:25 Uhr
Goto Top
Hallo Jodel32,

vielen Dank! Werd ich so umsetzen! Hast mir sehr geholfen!

Frohe Weihnachten! face-smile