Problém s errorlevel v batch (Zobrazuje to co nemá)

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

Uživatelský avatar
strangereu
Level 4.5
Level 4.5
Příspěvky: 1719
Registrován: září 11
Bydliště: Vršovice
Pohlaví: Muž
Stav:
Offline
Kontakt:

Problém s errorlevel v batch (Zobrazuje to co nemá)

Příspěvekod strangereu » 16 zář 2015 10:02

Čau, mám problém v batch souboru...
Udělal jsem si tam choice a když vyberu 1 tak se ukáže login input, ale i když vyberu cokoliv jiného tak se pořád ukáže ten login input jako by byla odpověď pořád 1 i když je ve skutečnosti třeba 4 nebo 2 nebo cokoliv jiného...

Kód:

Kód: Vybrat vše

@echo off
color 0b
title Console

set password_out=admin

echo -----------------------------
echo Please select an action to do
echo -----------------------------
echo [1] - Login
echo [2] - Settings
echo [3] - About
echo [4] - Exit
choice /C 1234 /N
if errorlevel 1 goto login
if errorlevel 2 goto settings
if errorlevel 3 goto about
if errorlevel 4 exit

:login
set /p password_in="System password: "
if %password_in%==%password_out% (
   goto success
) else (
   goto err
)

:settings
echo Settings...
pause > nul:

:about
echo About...
pause > nul:

:err
cls
echo Incorrect password...
echo Would you like to try it again?
echo [1] - Yes
echo [2] - No (Close the program)
choice /C 12 /N
if errorlevel 1 goto login
if errorlevel 2 exit

:success
cls
echo Logged in...
pause > nul:


img1001.png
img1001.png (5.86 KiB) Zobrazeno 453 x
http://screenshare.cz/

Reklama
Uziv00
Pohlaví: Nespecifikováno

Re: Problém s errorlevel v batch (Zobrazuje to co nemá)

Příspěvekod Uziv00 » 16 zář 2015 11:07

Zkus to přehodit.
Tedy if errorlevel 4, 3, 2, 1 (sestupně).

zeus
Elite Level 10.5
Elite Level 10.5
Příspěvky: 11122
Registrován: únor 12
Bydliště: Pankrac
Pohlaví: Muž
Stav:
Offline

Re: Problém s errorlevel v batch (Zobrazuje to co nemá)

Příspěvekod zeus » 16 zář 2015 16:52

Spravne, errorlevel prochazi, pokud je roven nebo vyssi.
Prazaci jo ty se maj, az kdyz si me zavolaj..

Uživatelský avatar
faraon
Master Level 8.5
Master Level 8.5
Příspěvky: 7400
Registrován: prosinec 10
Pohlaví: Muž
Stav:
Offline

Re: Problém s errorlevel v batch (Zobrazuje to co nemá)

Příspěvekod faraon » 16 zář 2015 19:02

"Král Lávra má dlouhé oslí uši, král je ušatec!

(pravil K. H. Borovský o cenzuře internetu)

Uživatelský avatar
strangereu
Level 4.5
Level 4.5
Příspěvky: 1719
Registrován: září 11
Bydliště: Vršovice
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Problém s errorlevel v batch (Zobrazuje to co nemá)

Příspěvekod strangereu » 17 zář 2015 09:13

A ještě bych se chtěl zeptat, není náhodou nějaký lepší způsob místo goto?
Příjde mi trošku divné všude psát goto něco a pak :něco blablabla...

A jinak díky, funguje to :)
http://screenshare.cz/

Uživatelský avatar
Oxxid
člen BSOD týmu
Master Level 8
Master Level 8
Příspěvky: 6194
Registrován: prosinec 12
Pohlaví: Muž
Stav:
Offline

Re: Problém s errorlevel v batch (Zobrazuje to co nemá)

Příspěvekod Oxxid » 17 zář 2015 09:28

Powershell

Uziv00
Pohlaví: Nespecifikováno

Re: Problém s errorlevel v batch (Zobrazuje to co nemá)

Příspěvekod Uziv00 » 17 zář 2015 18:13

VBScript

Uživatelský avatar
faraon
Master Level 8.5
Master Level 8.5
Příspěvky: 7400
Registrován: prosinec 10
Pohlaví: Muž
Stav:
Offline

Re: Problém s errorlevel v batch (Zobrazuje to co nemá)

Příspěvekod faraon » 17 zář 2015 18:36

strangereu píše:A ještě bych se chtěl zeptat, není náhodou nějaký lepší způsob místo goto?

Určitě je, vyzkoušej si linuxový bash, a poznáš skutečnou moc příkazového řádku :lol:

Ale když používáš desítky let zastaralou vykopávku, budeš se muset spokojit s desítky let zastaralými metodami. Nebo se je naučit opravdu efektivně používat, každou úlohu nejdřív analyzovat a rozkreslit ve vývojových diagramech, a potom teprve převést do kódu. Potom zjistíš že GOTO je ten nejvýkonnější způsob větvení, nejen v ComManDu, ale v jakémkoliv programovacím jazyce. A také ten nejnáročnější, správně používat ho umí jenom opravdoví mistři.
"Král Lávra má dlouhé oslí uši, král je ušatec!

(pravil K. H. Borovský o cenzuře internetu)


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Problém s FPS
    od mcrakvar » 26 lis 2024 16:22 » v Vše ostatní (sw)
    4
    5368
    od petr22 Zobrazit poslední příspěvek
    28 lis 2024 10:06
  • Problém s RAM
    od lukas222 » 04 lis 2024 13:52 » v Problémy s hardwarem
    4
    4933
    od lukas222 Zobrazit poslední příspěvek
    05 lis 2024 13:36
  • Problém s monitorom
    od sloliv » 08 led 2025 04:55 » v Problémy s hardwarem
    8
    2735
    od sloliv Zobrazit poslední příspěvek
    08 led 2025 22:03
  • Problém se spuštěním PC
    od Viroxx » 27 led 2025 07:09 » v Problémy s hardwarem
    1
    2682
    od petr22 Zobrazit poslední příspěvek
    27 led 2025 07:19
  • Problém s internetem
    od yakubb23 » 31 led 2025 19:01 » v Sítě - hardware
    1
    5495
    od meda2016 Zobrazit poslední příspěvek
    31 led 2025 21:50

Zpět na “Programování a tvorba webu”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 1 host