Írásban Services Manager ablak parancssori eszközöket és a Windows Script Host
Oké, először nézzük meg az alapokat, azaz bármely parancssori segédprogram kezelésére használt szolgáltatás:
Utility sc (Már részének tekintik a cikk Első szolgáltatások listáját, a Windows Script Host parancssori eszközök és a szerver) belőle, meg kell csak néhány parancsot, nevezetesen:
SC indul szolgáltatás_neve -start a szolgáltatást a parancssorból
Servicename Sc szünet - szünet Windows-szolgáltatást a parancssorból
SC továbbra szolgáltatásfolyamat - megújítása a szolgáltatást a parancssorból
Sc megálló szolgáltatásfolyamat - stop szolgáltatás a parancssorból
Servicename paraméter határozza meg a szolgáltatás nevét. Ahogy azt kell figyelembe venni, hogy a függő szolgáltatásokat lehet a szolgáltatást.
Van azonban egy kivétellel - az indítás típusát, így ha a szolgáltatás teljesen leállt, akkor először meg kell változtatni az indítási típust, és csak ezután indítsa el a Windows-szolgáltatást a parancssorból. Ahhoz, hogy módosítsa az indítás típusát, akkor használja a következő parancsot:
Sc config ServiceName zászló start =
Ügyeljen arra, hogy a tér, vagy hiba egyenlőségjel után. A zászló három lehetséges értékek:
Auto - automatikus elindítása induláskor
Demand - kézi indítás
Mozgáskorlátozottak - off
Elindításához vagy leállításához a szolgáltatást a parancssorból, két közművek:
net stop servicename
net start servicename
Ne felejtsük el, hogy tudja kezelni a Windows-szolgáltatások a Vezérlőpult, Felügyeleti eszközök mappát, címke szolgáltatásokat.
Általában ez a kiadvány azt fizikailag nem képes írni, ha nem két dolgot:
- Amint elkezdtem a blog, akkor a végrehajtás az ablakkezelő használt LangMF programot róla inkább bőséges lehetőséget, de amint találkoztam a komponens WSO. ez már nincs szükség rám.
- Hogy akkor megvan a fejembe, hogy írjon a fájlkezelő segítségével JScript nyelvi kódot, majd az átvitelt VBScript. Dobtam a kezdeti érinti, de ... ez lehetetlen volt, hogy tőlem tanácsot, mentem a fórumon, és elmagyaráztam mindent helyesen, és rájöttem ... nem értettem semmit. Miután abban a pillanatban, volt egy csomó átképzését, és gondolja át, ennek eredményeként már eltávolították szinte az összes cikket a blog, és írt újakat.
Nos, most van itt az ideje, hogy elkezdjünk programozni, én először példát mutatnak a nyelv JScript. Ezután adja meg a leírást és informatív képek, jól, majd egy példa a nyelv vbscript.
A forgatókönyv hoztunk létre két tömböt def_column és data_array. nézzük meg őket:
def_columns - a tömb tartja a tárgyakat, amelyek feladata lesz a feldolgozás minden oszlop. A végrehajtása egy sor tárgyak vbscript nyelv (értsd: „9. lecke VBScript: tömbök”) és a JScript (ejtsd „lecke 5 JScript: Munka tömbök”) különböző, így nézzük meg mindent külön-külön:
Végrehajtás JScript
def_columns = [,, ...,] - mint látjuk, a vessző zárójelek, meg kell adnia a tárgyakat, de nem a neveket, de az összes kódot. Minden objektum információkat tartalmaz az oszlop nevét, méretét, az adatok típusától, amely felelős a hozzáférést a kiválasztott elemet a listából.
Végrehajtás vbscript
def_columns = Array (obekt_1, obekt_2 ... obekt_n) - Első pillantásra, minden egyszerű, csak be kell regisztrálni keresztül változó tárgyak neveit (osztályok), de van egy dolog. Először meg kellett létrehozni az osztályok és mivel az öt hangszóró, és az osztályok legyen öt, hogyan lehet létrehozni egy osztály, olvassa el a cikk „8. lecke VBScript: Tárgyak és osztályok.” Közvetlenül előtte megalakult a tömb, amit létrehozott linkek az osztályokra, vagy bármilyen módon.
data_array - a tömb, mint az előző, áll a tárgyak, minden objektum tartja tájékoztatás a kiválasztott szolgáltatás (név, állapot alias, és így tovább). Minden alkalommal, amikor megpróbálja elindítani a szolgáltatást a parancssorból, állítsa le a szolgáltatást a parancssorból, szüneteltetése és folytatása, illetve feldolgozása közben a kiválasztott szolgáltatás a Windows WMI eszközök kerülnek be fellebbezést a tömb az index és adatokat lekérni az aktuális objektumot. A legtöbb esetben, csak meg kell egy név ingatlan, mind objektum található öt tulajdonságait (oszlopok száma).
A tömb dinamikus, a példában a JScript hozzáadásával adatok keresztül történik push függvénye. VBScript ez nem lehetséges, ezért kellett, hogy először meghatározzuk a hossza a szolgáltatások köre, és csak ezután a kulcsszó ReDim sor hossza a tömb.
Az összes funkció nem nyúlok, próbál szerezni az egész petíció és én, hogy őszinte legyek, mint egy hatalmas kódot visszatartja. Úgy véljük, csak az ellenőrzési funkciók, azok, amelyek a szolgáltatások indítását a parancssorból, stop szolgáltatás a parancssorból, megújítására, felfüggesztésére, transzfer automata üzemmódban a fordítást a kézi rezhit és letiltja a Windows szolgáltatásokat.
funkció ServiceStop, funkció ServicePause, ServiceContinue - funkciók, amelyek felelősek a leállítását, szüneteltetését és újraindítását Windows szolgáltatás. A kód majdnem ugyanaz, mint az előző funkció csak változik a módszer neve.
De most az igazi móka kezdődik ..
funkció ServiceAuto - ez a funkció felelős a fordítási szolgáltatás automatikus üzemmódban. Nem WMI funkcionalitás és úgy döntött, hogy igénybe a parancssori segédprogramokat. Felelős az egész folyamat a lényeg a következő:
WshShell.Run "cmd.exe / c sc config" cur_service_name "Start = Auto" ">" + Temp_file, 1, igaz
Ezután futtassa a parancssor jön a paraméter „/ c”, azaz, hogy automatikusan befejeződik a parancs után sc config. Azonban az adatok tárolására egy ideiglenes fájlban. Amint a parancs fogja megnyitni a fájlt, hogy a felhasználó látta a siker a csapat, vagy sem.
ServiceManual () és ServiceDisable () - Windows szolgáltatás átviteli függvény kézi üzemmódban, és kapcsolja ki, a kód szinte ugyanaz, a változó csak a csapat.
Oké, itt a kód vbscript: