Niepozorne polecenie start

Mojego bloga odwiedzają głównie użytkownicy systemów z rodziny Windows, Linuksowcy zdarzają się bardzo rzadko, najrzadszymi gośćmi są ludzie od Maca czy innego BeOS-a, ewentualnie systemów z rodziny BSD. Tak więc postanowiłęm co jakiś czas pisać m.in. o firmie Microsoft, o Windowsie, podawać jakieś sztuczki, wskazówki i bronić przed atakami zagorzałych fanatyków pewnego wolnego systemu ;-)

Dziś więc będzie o mało znanym, niepozornym, a czasem bardzo przydatnym poleceniu wiersza poleceń, o poleceniu start. Polecenie to, zgodnie z jego własną pomocą “Uruchamia oddzielne okno w celu wykonania określonego programu lub polecenia.”. Czyli ogólnie służy do wywoływania poleceń, uruchamiania programów i tak dalej. I ma nieco więcej możliwości niż okno “Uruchom” z Menu Start, czy normalne wpisanie nazwy programu w oknie konsoli tekstowej. Można zatem je z powodzeniem stosować we własnych plikach wsadowych.

START ["tytuł"] [/Dścieżka] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
[/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]
[/WAIT] [/B] [polecenie/program]
[parametry]

Tak wygląda składnia polecenia start. Pierwszy, opcjonalny, parametr pozwala nam ustawić tytuł otwieranego okna. Kolejny określa katalog początkowy dla uruchamianego procesu. /MIN i /MAX odpowiadają za uruchomienie aplikacji w stanie zminimalizowanymlub zmaksymalizowanym, /SEPARATE lub /SHARED pozwala uruchamiać starsze aplikacje 16-bitowe w oddzielnych obszarach pamięci (lub wspólnych poprzez /SHARED).

Ciekawe są parametry /LOW, /NORMAL, /HIGH, /REALTIME, /ABOVENORMAL i /BELOWNORMAL, które odpowiadają za przydzielenie nowootwieranemu procesowi odpowiedniej klasy priorytetowej - od Low do Realtime. Klasy priotytetowe odpowiadają za kolejność przetwarzania procesów przez system operacyjny. Dzięki temu, możemy ustalić, by na przykład program nagrywający płyty miał większy priorytet niż odtwarzacz MP3, przez co w pierwszej kolejności system zajmie się zgłoszeniami nagrywającego płyty niż jakiegośtam odtwarzacza. Priorytet Realtime jest przyznawany niektórym procesom systemowym, nie jest zalecane stosowanie go przy uruchamianiu innych aplikacji - w przypadku zawieszenia procesu o priorytecie Realtime mozę dojść do krachu całego systemu. Nie wszystkie aplikacje jednak dają się uruchamiać z określonym priorytetem poprzez polecenie start. Wyjątkiem jest np. Winamp, w którym priorytet ustawia się w oknie konfiguracji programu.

Parametr /WAIT czeka z zamknęciem okna na zakończenie programu, natomiast /B nie tworzy nowego okna, co powoduje, że aplikacja nie będzie potrafiła obsłużyć kombinacji klawiszy CTRL+C.

Polecenie start może, tak jak i na przykład okno “Uruchom”, uruchamiać nie tylko programy czy polecenia, ale także automatycznie uruchamiać program przyporządkowany do danego protokołu. Przykładowo, polecenie:

start mailto:nobody@example.com

Uruchomi domyślny program pocztowy (o ile jest skojarzony z protokołem mailto) przy oknie pisania nowej wiadomości na podany adres. Podobnie możemy zastosować polecenie

start http://www.ktos.info

do uruchomienia strony internetowej. Oraz - jeśli na danym komputerze jest odpowiedni program obsługujący ten protokół - wpisanie na przykład:

start gg:12345

czy

start xmpp:nobody@example.com

w pierwsym przypadku otworzy okienko komunikatora (zwykle Gadu-Gadu) z możliwością napisania do danej osoby, a drugie - to samo, ale okienko komunikatora klienta protokołu Jabber/XMPP.

Acha, co do poleceń, jakie uznawane są przez komendę start. Można uruchomić wszelkiego rodzaju pliki wykonywalne oraz dowolne pliki skojarzone z jakimś programem - zostaną one wtedy otworzone w danym programie. Jeżeli nie podane zostanie rozszerzenie pliku przy poleceniu to program cmd.exe używa zmiennej środowiskowej PATHEXT do określenia, których rozszerzeń szukać, i w jakiej kolejności. Domyślnie, zmienna ta ma postać:

.COM;.EXE;.BAT;.CMD

Jeśli mimo to cmd.exe nie znajdzie pasującego pliku, to przeszukiwane są nazwy katalogów. Jeśli zostanie
znaleziony katalog pasujący do nazwy bez rozszerzenia, komenda uruchamia okno Eksploratora dla tej ścieżki.

Liczba komentarzy: 5

»
  1. #1 Maciek
    czerwiec 7, 2006 godzina 23:30

    Hmmm. U mnie to nie działa :-/ Próbowałem z DC i GuildFTP i za każdym razem aplikacje uruchamiają się w trybie normal :-/
    Wni XP Pro SP2

    próbowałem tak: start GuildFTPd.exe /HIGH

  2. #2 Maciek
    czerwiec 7, 2006 godzina 23:35

    heh, juz mam, odwrotnie trzeba :-)

    start /HIGH GuildFTPd.exe

    tak działa

  3. #3 Ktos
    czerwiec 8, 2006 godzina 08:49

    Dokładnie, polecenie i jego parametry są ostatnimi parametrami “start”. Tam na górze jest składnia podana i nawet to zaznaczone jest :-)

  4. #4 claudio1
    październik 19, 2007 godzina 19:18

    Chciałbym z wiersza poleceń po prostu otworzyć domyślną przeglądarkę internetową (z pustą stroną) - start http: … i co dalej? Co powinienem wpisać zamiast adresu strony www?

  5. #5 Ktos
    październik 19, 2007 godzina 20:24

    @claudio1:
    U mnie działa po prostu:
    start about:blank

    (choć co ciekawe nie uruchamia przeglądarki domyślnej, a drugą…)

Wątek RSS dla komentarzy tego wpisu · Adres trackback

Zostaw komentarz

Dozwolone są niektóre znaczniki XHTML, jak: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Na tym blogu stosowana jest wtyczka antyspamowa Spam Karma. Jeżeli Twój komentarz nie pojawia się, lub po jego dodaniu otrzymujesz pustą stronę - poczekaj, komentarz został dodany, ale albo oczekuje w kolejce, albo został mylnie zakwalifikowany jako spam - spokojnie, gdy zajrzę do panelu administracyjnego to uratuję go.