predgovor
V nadaljevanju prejšnjega članka o Windows Task Schedulerju bo ta članek zabeležil ustvarjanje Windows storitev.
Okolje in orodja
>Sistem Windows 10
>VS 2017
Besedilno sporočilo
1: Ustvarite novo rešitev in ustvarite Windows storitev. Ime je "WindowsServiceDemo.exe”
2: Dvojni klik na datoteko "Service1.cs", desni klik na prazen prostor – > izberite "Dodaj namestitveno datoteko".
3: V dveh generiranih komponentah kliknite na komponento "serviceProcessInstaller1" in v obrazcu lastnosti nastavite tip računa "Account" na "LocalSystem".
4: V dveh generiranih komponentah kliknite komponento "serviceInstaller1" v obrazcu lastnosti, nastavite ustrezne lastnosti in nato shranite.
5: Desni klik na "Service1.cs" – > izberite "Ogled kode".
6: V ustrezni metodi zapišite logiko obdelave. Metoda OnStart(): se nanaša na metodo, ki vstopi, ko se Windows storitev zažene. OnStop(): Kot že ime pove, je to način vstopa, ko se storitev ustavi. Lahko napišemo časovnik, da program obdela logiko pri običajnem spolnem odnosu.
7: Ustvarite dve datoteki beležke, poimenujte in spremenite priponi "Install.bat" in "Uninstall.bat" Opomba: Ime pripone je .bat. Prilepite ga v projekt. In spremenite atribut v "Kopiraj v lokalno".
8: Dve datoteki, ki smo jih pravkar ustvarili, sta namenjeni namestitvi storitve in njeni odstranitvi. Zdaj napiši serijsko kodo v ti dve datoteki in jo shrani. Odpri datoteko "Install.bat" in napiši naslednjo kodo
Opomba: "WindowsServiceDemo.exe" je pravkar generiran exe program. "AServiceTest" je "ServiceName" v komponenti "serviceInstaller1".
Odpri datoteko "Uninstall.bat" in napiši naslednjo kodo
9: F6 ga generira. V mapi projekta "bin\Debug". Desni klik na "Install.bat" – > izberite "Zaženi kot skrbnik".
Ko je namestitev storitve končana. Vidimo, da datoteka "Log.txt" zapiše vrstico podatkov vsakih 10 sekund.
Vidimo nameščene storitve. Run – > vnesi "services.msc" vnesi.
Ustavite storitev zdaj. Desni klik na "Uninstall.bat" – > izberite "Zaženi kot skrbnik".
Po odstranitvi storitve. Vidimo, da ima datoteka "Log.txt" prav tako vrstico podatkov, zapisano nanjo.
#Odpravljanje napak v Windows storitvah
Windows storitev ni mogoče neposredno zagnati z F5, F10 je debuggiran. Kako torej odpraviti napake programa, če pride do nepravilnosti? 1: Najprej uporabite administratorja, da zažene datoteko "Install.bat" in pustite, da program teče prvi.
2: Vrnite se v VS in izberite "Debug" v menijski vrstici – > izberite "Attach to Process".
3: V pojavnem obrazcu označite "Prikaži vse procese uporabnikov", poiščite .exe aplikacijo, ki smo jo ustvarili, in kliknite "Priloži".
4: Razdeli točko v metodi, da lahko ob določenem času sproži razhroščevanje.
Epilog
Odpravljanje napak v Windows storitvah je zelo zahtevno, včasih je program napisan v težavi in storitev se ne more zagnati, kar otežuje odpravljanje napak. Na splošno je pisanje storitev za Windows spremljano s konzolno aplikacijo. Razhroščevanje v konzolni aplikaciji in nato prenesite v Windows Services. Naslednja tema bo opisala enostavnejši način ustvarjanja Windows storitve.
Opomba: Serijske datoteke, ki jih zaženeta in odstranita oba programa, morajo biti zagnane kot skrbniki. V nasprotnem primeru bo to napačno.
|