Menü
      Mobiltelefonos verzió Mobillal jöttél?
Kisképes USiTE.hu.

Kövesd Az USiTE.hu-t a Twitteren!
vagy FriendFeed   

:)






 


Indítópult konfigurálás bat file-al
2009-03-06 17:13:58


Tudom, hogy az emberek nagyrésze mindent egérrel csinál, azaz a bat programozás kínaiul hangzik, de most nem fogunk semmilyen összetett programot írni. Viszont gondolom mindenkinek van pár olyan programja, ami a Windows-al együtt indul el. Tegyük fel egy winchester-hőfok figyelő, vagy egy MSN messenger, skype, total commander, vagy bármi.
 
És mi van akkor, ha nem szeretnénk egy Windows újrainstall után minden programunkat egyenként beledobálni egérrel az indítópult/startup-ba? Nagyon egyszerű az egész: Csinálunk rá egy bat file-t, és akkor csak azt a bat file-t kell bedobálni oda. A bat file-ról röviden csak annyit, hogy az egy szövegfile, csak bat lesz a kiterjesztése, azaz például inditopult.bat. És mit lehet evvel elindítani? Akármit, amit a Windows is el tud. Tehát, exe, vagy akár linket (.lnk) is.
 
 Nézzük meg, hogy hogyan is néz ki az én indit.bat-om.
@echo off
 start C:\Utils\hw-info\DTemp\DTemp.exe
 start C:\Utils\hw-info\SysInfoMyWork-2.1\SysInfoMyWork.exe
 start C:\Progra~1\Logitech\SetPoint\SetPoint.exe

 
Az első sor csak arra jó, hogy ne írja ki a parancs-sort, különben azt is látnánk a képernyőn. A második-negyedik parancs elindítja az xy exe-t. Ahogy látjuk, a teljes útvonalat meg kell adnunk, különben a Windows nem tudja elindítani. (Haladóknak: Azaz nincs benne a path-ban. Ha benne van, akkor ez nem kell.) A start meg azért van előtte, hogy ne várja meg, amíg a program bezár. Ha nem rakjuk elé a start parancsot, akkor addig fog várni a batunk, amíg az előző program ki nem lép, és csak azután fogja elindítani a következőt. Mivel ezek a programok olyanok, amik folyamatosan fognak futni, nem akarunk várni feleslegesen. De például ha egy ccleanert akarunk indítani, ami egy automatikus törlés után ki fog lépni, akkor érdemes megvárni, hogy befejezze a törlést, hiszen annak sincs sok értelme, hogy egyszerre sok program induljon el.
 
De mi van akkor, ha nekünk itt mondjuk 5 programunk van, amik kigyilkolják a gépet az induláskor, és ezt nem akarjuk? A leggyorsabb módszer egy pause, azaz szünet beiktatása. Simán beírjuk a kívánt sor után, hogy pause. Így:
@echo off
 start C:\Utils\hw-info\DTemp\DTemp.exe
 pause

 
Ez azt fogja csinálni, hogy a DTemp elindítása után szépen kiírja, hogy "Press any key to continue..." magyarul meg "Nyomjon egy gombot a folytatáshoz...", azt hiszem. A lényeg, hogy meg fogja várni, amíg lenyomunk egy gombot, és addig nem fogja elindítani a következő, jelen esetben a Sysin...exe-t. Aki szeretne saját üzenetet a "Press any key..." helyett, az cserélje ki a "pause" sort a "pause >nul"-ra, és tegye elé az "echo (üzenet)" parancsot. Tehát például:
@echo off
 start C:\Utils\hw-info\DTemp\DTemp.exe
 echo Betöltöttem a DTemp programot, és most várok.
 pause >nul

 
Ilyen echo-s üzenetet bárhova lehet írni, ha akarjuk, mondjuk a legelejére is. Példa:
@echo off
 echo Töltöm be a programokat!
 start C:\Utils\hw-info\DTemp\DTemp.exe

 
Ekkor ki fogja írni ezt az üzenetet a programok elindítása előtt.
 
Ahogy az elején mondtam, megadhatunk linkeket is. Tehát ha a bat-nak megadjuk, hogy mi a c:\Documents and Settings\Jozsibacsi\Start Menu\Programs\Internet Explorer.lnk -et akarjuk indítani, nem lesz gond. Egyre kell csak vigyáznunk, mégpedig arra, hogy ha az útvonalban space, azaz szóköz lenne, akkor macskakörmözni kell az útvonalat. Különben kapunk egy szép hibaüzenetet, hogy a file nincs ott.
 
 Tehát ez a jó: 
start "c:\Documents and Settings\Jozsibacsi\Start Menu\Programs\Internet Explorer.lnk"
 
 
Aki nem akar macskakörmözni, az megadhatja a könyvtár rövid nevét is. Ez a "Documents and Settings" esetében "Docume~1" lesz. Ha kíváncsiak vagyunk egy könyvtár rövid nevére, azt a dir /x paranccsal tudhatjuk meg. Minden könyvtár rövid nevét meg kell adnunk, nem elég csak az elsőt! Viszont ha nincs benne szóköz, akkor beírhatjuk simán is. Azaz a Jozsibacsi nem baj, ha még több is, mint 8 karakter.
 
Röviden ennyi. Ez a bat a windows install után is működni, ha ugyanott maradnak a file-ok. De az installált programokra is jó, tényleg csak az a lényeg, hogy ugyanabban a könyvtárban legyenek a file-ok. A fenti példámban én mindig c:\Program Files\Logitech könyvtárba teszem a logitech drivert. Sőt, ő is alapból oda akarja rakni, szóval még el sem ronthatom. Windows install után csak linkelem az indit.bat-ot az indítópultba, és ennyi az egész.

USiTE