Skocz do zawartości
Czarny Ass

[Visual Basic/Batch]Choice

Rekomendowane odpowiedzi

Nie działa polecenie choice, wyświetla się:

Nazwa 'CHOICE' nie jest rozpoznawana jako polecenie wewnętrzne lub zewnętrzne, program wykonywalny lub plik wsadowy.

Czy tylko mi się wyświetla ten błąd? Długo mam do czynienia z visual basic ale nigdy nie potrzebowałem tego tylko SET z przełącznikiem /p. :unsure: Co mam zrobić?

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Pokaż jakiś fragment kodu z tym.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
ECHO                  TTTTT  U   U  I  M   M  AAAAA  N   N
ECHO                    T    U   U     MM MM  A   A  NN  N
ECHO                    T    U   U  I  M M M  AAAAA  N N N
ECHO                    T    U   U  I  M   M  A   A  N  NN
ECHO                    T     UUU   I  M   M  A   A  N   N
ECHO.
ECHO.
ECHO                    START GAME   [1]
ECHO                    LOAD GAME    [2]
ECHO                    CREDITS      [3]
ECHO                    OPTIONS      [4]
ECHO                    EXIT         [5]
PAUSE>NUL
CHOICE /c:12345 /n
IF Errorlevel 1 goto newgame
IF Errorlevel 2 goto loadgame
IF Errorlevel 3 goto credits
IF Errorlevel 4 goto options
IF Errorlevel 5 goto exit

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

To mi wygląda na plik BAT a nie Visual Basic. Jeżeli to jest plik BAT to napisany poprawnie. Pewnie zrezygnowano z polecenia Choice w Windowsie którego posiadasz. Napisz lepiej takie menu w jakimś języku programowania i skompiluj.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Dzięki za radę. Chyba tak zrobię.

 

A można zrobić coś takiego jak set /p ale bez duszenia enter w BAT?

 

EDIT:

A można ściągnąć choice.exe/choice.com? Może w Bat to Exe converter dodam to jako include i coś wykombinuję.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

A jest jakaś różnica jak użyję tego z folderu DOS lub NT? Bo ja mam XP i robię DOS, a działa.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Jak działa, to to jest najważniejsze. Różnica polega tylko na tym, skąd został zaczerpnięty plik.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Skoro już mi działa po dodaniu tej "biblioteki" z choice to samo choice działa ale:

CHOICE /c:12345 /n
IF Errorlevel 1 goto NEWGAME
IF Errorlevel 2 goto LOADGAME
IF Errorlevel 3 goto CREDITS
IF Errorlevel 4 goto OPTIONS
IF Errorlevel 5 goto EXIT

czemu to nie działa? To co mam w etykiecie Credits się nie włącza, a żadnych błędów nie wyświetla. Mam wszystkie etykiety i nic nie wskazuje na to aby cokolwiek nie działało.

 

EDIT:

Sam się zorientowałem.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

:newgame
* komendy wykonywane dla wyboru newgame *
:loadgame
* komendy wykonywane dla wyboru loadgame *
:credits
* komendy wykonywane dla wyboru credits *
:options
* komendy wykonywane dla wyboru options *
:exit

Mam nadzieję, że załapałeś to co wyżej podałem. Przez goto przenosisz się do określonej części pliku bat, poprzedzonej dwukropkiem, coś w stylu procedur. Dopiero w tych fragmentach określasz co ma być wykonane.

 

EDIT: ok, nie zauważyłem edita w poprzednim poście.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Problem z poleceniem choice:

ECHO                  TTTTT  U   U  I  M   M  AAAAA  N   N
ECHO                    T    U   U     MM MM  A   A  NN  N
ECHO                    T    U   U  I  M M M  AAAAA  N N N
ECHO                    T    U   U  I  M   M  A   A  N  NN
ECHO                    T     UUU   I  M   M  A   A  N   N
ECHO.
ECHO.
ECHO.
ECHO                            AUTHOR:
ECHO                            FERRARI4
ECHO               PARADROPSOFT 2010
ECHO               WOULD YOU LIKE VISIT THE WEB SITE OF PARADROPSOFT? (Y/N)
ECHO               WEBSITE: HTTP://PARADROPSOFT.DBV.PL
CHOICE /c:YN /n >NUL
IF ERRORLEVEL 1 PARADROPSOFT.URL | IF ERRORLEVEL 2 GOTO MENU

 

Mam plik Paradropsoft.url, który przenosi na stronę internetową. Problem w tym, że jak nacisnę N to stanie się to samo co przy Y! Proszę o pomoc. :mellow:

 

EDIT: Czy jest opcja usuwania swojego postu? Sam się zorientowałem! Znowu!!!

EDIT2: Jakie polecenia są dozwolone w Batch jak się je kompiluje na COM przez Bat2Exec.

 

 

POŁĄCZONO.

 

 

I tak oto nasz chodzący znak zapytania ma następne pytanie:

CHOICE /c:12345 /n
IF Errorlevel 1 goto 1 | IF Errorlevel 2 goto 2 |IF Errorlevel 3 goto 3 |IF Errorlevel 4 goto 4 | IF Errorlevel 5 EXIT

Czemu zawsze pisze "W tym momencie goto było nieoczekiwane" i robi to co jest po tych moich nieszczęsnych errorlevelach?

 

 

Naruszenie punktu 3 regulaminu. (Doublepost)

Platyna

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się tutaj.

Zaloguj się tutaj

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników, przeglądających tę stronę.

×