Pliki wsadowe/MS-DOS: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Przemub (dyskusja | edycje)
m lit.
Przemub (dyskusja | edycje)
Nie podano opisu zmian
Linia 3:
{{uwaga|Jest to dodatek do [[../Windows|rozdziału Windows]], a więc potrzebujesz go najpierw przeczytać.}}
 
Zgodnie z tym co wcześniej przeczytałeś w notce wyżej, ten moduł służy do wyjaśnienia różnic między pisaniem plików wsadowywsadowych dla najnowszych Windows a dla MS-DOS i [[Microsoft Windows 9x|Windows 9x]] (opartych o MS-DOS).
 
== Przyjmowanie danych ==
Najważniejszą różnicą jest '''brak funkcji set /p''', której zamiennikiem jest funkcja choice nieistniejąca z kolei w Windows XP i nowszych. Ta funkcja różni się składnią, możliwościami oraz sposobem zwracania danych - do <tt>set /p</tt> można wpisać cokolwiek a wejście zwracane jest do wybranej zmiennej środowiskowej, a w <tt>choice</tt> '''możemy tylko dokonać wyboru z wcześniej wybranych opcji''', a wybrana opcja jest zwracana jako kod wyjścia do zmiennej <tt>ERRORLEVEL</tt>, której zawartością jest numer wybranej opcji od jeden w górę.
 
W praktyce:
Linia 28:
 
Funkcję choice tworzymy <tt>choice /C:opcje Zachęta%1</tt> gdzie opcje to dostępne opcje (wyżej 1, 2 i 3 podawane jako 123), a %1 kończy zachętę i zamieniane jest na ''(opcja, opcja, opcja, ...)?'', w tym wypadku na ''(1, 2, 3)?''. Jeżeli nie chcemy tej zamiany, to dodajemy argument <tt>/N</tt>, wtedy %1 nie zmieni się na nic, '''ale nadal jest potrzebne'''.
 
== Przykłady ==
Niżej zobaczymy przykłady z rozdziału Windows "przetłumaczone" na MS-DOS.
=== Uruchomienie strony ===
{{Uwaga|Tutaj podamy dwa przykłady. Pierwszy uruchomi przeglądarkę graficzną (tylko w Windows 9x) a drugi tekstową. Do tego drugiego będziemy potrzebować plików przeglądarki Lynx w podfolderze lynx. Do ściągnięcia z http://lynx.isc.org/.}}
 
==== Graficznie ====
<source lang="dos">
@echo off
echo POLECANE STRONY INTERNETOWE
:tekst
echo [1] - Wikibooks
echo [2] - Wikipedia
echo [3] - Pliki wsadowe w Wikibooks
echo [4] - Pliki wsadowe w Wikipedii
:zapytanie
choice /N /C:1234qt Podaj numer strony (q aby wyjść, t aby powtórzyć strony)?
if ERRORLEVEL==5 goto wyjscie
if ERRORLEVEL==4 goto tekst
if ERRORLEVEL=="1" start "iexplore.exe http://pl.wikibooks.org"
if ERRORLEVEL=="2" start "iexplore.exe http://pl.wikipedia.org"
if ERRORLEVEL=="3" start "iexplore.exe http://pl.wikibooks.org/Pliki_wsadowe"
if ERRORLEVEL=="4" start "iexplore.exe http://pl.wikipedia.org/Program_wsadowy"
goto zapytanie
:wyjscie
</source>
==== Tekstowo ====
<source lang="dos">
@echo off
echo POLECANE STRONY INTERNETOWE
:tekst
echo [1] - Wikibooks
echo [2] - Wikipedia
echo [3] - Pliki wsadowe w Wikibooks
echo [4] - Pliki wsadowe w Wikipedii
:zapytanie
choice /N /C:1234qt Podaj numer strony (q aby wyjść, t aby powtórzyć strony)?
if ERRORLEVEL==5 goto wyjscie
if ERRORLEVEL==4 goto tekst
if ERRORLEVEL=="1" start "lynx\lynx.exe http://pl.wikibooks.org"
if ERRORLEVEL=="2" start "lynx\lynx.exe http://pl.wikipedia.org"
if ERRORLEVEL=="3" start "lynx\lynx.exe http://pl.wikibooks.org/Pliki_wsadowe"
if ERRORLEVEL=="4" start "lynx\lynx.exe http://pl.wikipedia.org/Program_wsadowy"
goto zapytanie
:wyjscie
</source>
 
== Zakończenie ==
To by było na tyle co do różnic - pamiętaj jeszcze tylko, że przy uruchamianiu programów zewnętrznych niedopuszczalne jest omijanie start. Jeżeli znalazłeś jakieś błędy, pisz w [[Dyskusja:Pliki wsadowe|dyskusji]].
 
Wszystkie kody źródłowe wykorzystane w tym module dostępne są na licencji [[Wikipedysta:Przemub/MIT|MIT (Expat)]].