Misiumaster Opublikowano 23 Stycznia 2011 Zgłoś Udostępnij Opublikowano 23 Stycznia 2011 Witam Mam pytanko:Jestem młody informatykiem, i narazie tworzę programy w języku DOS-owym BAT.I chciałbym żeby program "niby" się ładował i po kilku sekundach od włączenia programikubyło by okno powitalne, a przed tym oknem np.Ładowanie|+2 sek.| itd.Kolega (kujon) mówił o jakimś CHOICE ( ) lecz nie ogarniam co to jest.Wytłumaczy mi ktoś, lub napisze taki skrypcik .? Odnośnik do komentarza
DawidS28 Opublikowano 23 Stycznia 2011 Zgłoś Udostępnij Opublikowano 23 Stycznia 2011 Hmm...Choice to komenda na zasadzie switch - case z C++.http://cpp0x.pl/kursy/Kurs-C++/Podstawy/Warunek-wielokrotnego-wyboru-switch-case/17Działania są podejmowane na podstawie wpisanego znaku (znaków) przez usera.Trudno mi to wytłumaczyć bardziej opisowo, polecam zapoznanie się z dokumentacją TechNet:http://technet.microsoft.com/en-us/library/cc732504%28WS.10%29.aspx...albo pomocą z CMD:CHOICE [/C wybory] [/N] [/CS] [/T limit_czasu /D wybór] [/M tekst]Opis:To narzędzie umożliwia użytkownikowi wybranie jednego elementu z listywyborów i zwraca indeks zaznaczonego elementu.Lista parametrów:/C wybory Określa listę wyboru do utworzenia.Domyślna lista to "TN"./N Umieszcza listę wyboru w monicie.Komunikat jest wyświetlany przed monitemi wybory są nadal włączone./CS Umożliwia zaznaczanie wyborów uwzględniających wielkośćliter.Domyślnie narzędzie nie uwzględnia wielkości liter./T limit czasu Liczba sekund, po upływie których zostanie dokonanydomyślny wybór. Akceptowane są wartości z zakresu od 0 do9999. Jeżeli wprowadzisz cyfrę 0, domyślny wybórzostanie dokonany natychmiast./D wybór Określa wybór domyślny po upływie nnnn s. Znak musiznajdować się w zestawie wyborów określonych przy użyciuopcji /C. Wartość nnnn musi być określona parametrem /T./M tekst Określa tekst komunikatu wyświetlanego przedmonitem. Jeżeli tekst nie zostanie określony, narzędziewyświetli tylko monit./? Wyświetla ten komunikat pomocy.UWAGA:Zmienna środowiskowa ERRORLEVEL jest ustawiona na indeks kluczawybranego z zestawu wyborów. Pierwszy wybór na liściezwraca wartość 1, drugi wartość 2 itd.Jeżeli użytkownik naciśnie klawisz nieodpowiadający prawidłowemu wyborowi,narzędzie wyemituje sygnał ostrzegawczy. Jeżeli narzędzie wykryje błąd,zostanie zwrócona wartość ERRORLEVEL wynosząca 255. Jeżeli użytkowniknaciśnie klawisze CTRL+BREAK lub CTRL+C, narzędzie zwróci wartośćERRORLEVEL wynoszącą 0. Jeżeli parametry zmiennej środowiskowej ERRORLEVELsą używane w programie wsadowym, wyświetli je w kolejności malejącej.Przykłady:CHOICE /?CHOICE /C TNA /M "Naciśnij T dla Tak, N dla Nie lub A dla Anuluj."CHOICE /T 10 /C tna /CS /D tCHOICE /C ab /M "Wybierz literę a dla opcji 1 oraz literę b dla opcji 2."CHOICE /C ab /N /M "Wybierz literę a dla opcji 1 oraz literę b dla opcji 2."Co do zatrzymywania wykonywania skryptu:Wewnętrzne rozwiązanie (tylko w systemach Windows Vista/7) to waitfor:Istnieją dwa sposoby korzystania z parametru WaitFor:Składnia 1: aby wysłać sygnałWAITFOR [/s system [/u użytkownik [/P [hasło]]]] /SI sygnałSkładnia 2: aby czekać na sygnał.WAITFOR [/T limit_czasu] sygnałOpis:To narzędzie wysyła lub czeka na sygnał. Jeżeli opcja /S nie jestokreślona, sygnał zostanie wyemitowany do wszystkich systemóww domenie. Jeżeli opcja /S jest określona, sygnał zostanie wysłanytylko do określonego systemu.Lista parametrów:/S system Określa system zdalny do wysłania sygnału./U [domena\]użytkownik Określa kontekst użytkownika, w którympolecenie powinno być wykonane./P [hasło] Określa hasło dla podanego kontekstu użytkownika./SI Wysyła sygnał w sieci do oczekujących komputerów./T limit czasu Czas oczekiwania (w sekundach) na sygnał.Prawidłowy zakres to 1-99999. Domyślnie komputeryzawsze czekają na sygnał.sygnał Nazwa oczekiwanego lub wysyłanego sygnału./? Wyświetla ten komunikat pomocy.UWAGA: System może czekać na wiele unikatowych nazw sygnałów.Nazwa sygnału nie może być dłuższa niż 225 znaków i nie możezawierać znaków innych niż a-z, A-Z, 0-9 oraz znaków ASCIIz zakresu 128-255.Przykłady:WAITFOR /?WAITFOR SetupReadyWAITFOR CopyDone /T 100WAITFOR /SI SetupReadyWAITFOR /S system /U użytkownik /P hasło /SI CopyDoneDla CMD:Sleephttp://www.sleepcmd.com/Delayhttp://users.csc.calpoly.edu/~bfriesen/software/console.shtmlPauseWithTimeouthttp://www.cryer.co.uk/downloads/pausewithtimeout/Dla PowerShella:Pausehttp://blogs.msdn.com/powershell/archive/2007/02/25/pause.aspxPause-Script & Out-Morehttp://poshcode.org/613Pause until thenhttp://poshstudent.wordpress.com/2009/04/22/pause-until-then/Natomiast osobiście wolę pisać wszystko w C++ i potem po prostu odwoływać się do WinAPI jeśli zachodzi taka potrzeba. Odnośnik do komentarza
Gregis Opublikowano 11 Lutego 2011 Zgłoś Udostępnij Opublikowano 11 Lutego 2011 Witajtu tak na szybko przykład ładowania ... dostosujesz do własnych potrzeb do tego przykład zastosowania polecenia choice @ECHO OFF :TAK CLS COLOR 2a echo TRWA LADOWANIE ... echo ÍÍÍÍÍÍ sleep 1 CLS echo TRWA LADOWANIE ... echo ÍÍÍÍÍÍÍÍÍÍÍÍ sleep 1 CLS echo TRWA LADOWANIE ... echo ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ sleep 1 CLS echo TRWA LADOWANIE ... echo ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ sleep 1 CLS echo. echo POWTORZYC LADOWANIE ? echo. choice /C:TN if ERRORLEVEL 2 goto NIE if ERRORLEVEL 1 goto TAK :NIE ECHO. ECHO KONIEC ECHO. pause Odnośnik do komentarza
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie 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ę poniżej.
Zaloguj się