Įvadas
Tęsiant ankstesnį straipsnį apie "Windows" užduočių planuoklį, šiame straipsnyje bus įrašytas "Windows" paslaugų kūrimas.
Aplinka ir įrankiai
>"Windows 10" sistema
>VS 2017
SMS žinutė
1: Sukurkite naują sprendimą ir sukurkite "Windows" paslaugą. Pavadinimas yra "WindowsServiceDemo.exe”
2: Dukart spustelėkite failą "Service1.cs", dešiniuoju pelės mygtuku spustelėkite tuščią vietą – > pasirinkite "Pridėti diegimo programą".
3: Dviejuose sugeneruotuose komponentuose spustelėkite komponentą "serviceProcessInstaller1" ir ypatybių formoje nustatykite paskyros tipą "Paskyra" į "LocalSystem".
4: Dviejuose sugeneruotuose komponentuose spustelėkite komponentą "serviceInstaller1", ypatybių formoje nustatykite atitinkamas ypatybes ir išsaugokite.
5: Dešiniuoju pelės mygtuku spustelėkite "Service1.cs" – > pasirinkite "Peržiūrėti kodą".
6: Atitinkamu metodu parašykite apdorojimo logiką. OnStart() metodas: nurodo metodą, kuris įvedamas paleidus "Windows" paslaugą. OnStop(): Kaip rodo pavadinimas, tai yra būdas įvesti, kai paslauga sustoja. Galime parašyti laikmatį, kad programa apdorotų logiką įprastų lytinių santykių metu.
7: Sukurkite du užrašų knygelės failus, pavadinkite ir pakeiskite priesagų pavadinimus "Install.bat" ir "Uninstall.bat" atitinkamai Pastaba: Priesagos pavadinimas yra .bat. Įklijuokite jį į projektą. Ir pakeiskite atributą į "Kopijuoti į vietinį".
8: Du failai, kuriuos ką tik sukūrėme, skirti paslaugai įdiegti ir paslaugai pašalinti. Dabar parašykite paketinį kodą į šiuos du failus ir išsaugokite. Atidarykite failą "Install.bat" ir parašykite šį kodą
Pastaba: "WindowsServiceDemo.exe" yra exe programa ką tik sugeneruota. "AServiceTest" yra "ServiceName", nustatytas "serviceInstaller1" komponente.
Atidarykite failą "Uninstall.bat" ir parašykite šį kodą
9: F6 jį sugeneruoja. Projekto kataloge "bin\Debug". Dešiniuoju pelės mygtuku spustelėkite "Install.bat" – > pasirinkite "Vykdyti kaip administratorius".
Kai paslaugos diegimas bus baigtas. Matome, kad failas "Log.txt" kas 10 sekundžių rašo duomenų eilutę.
Galime pamatyti įdiegtas paslaugas. Vykdyti – > įveskite "services.msc".
Sustabdykite tarnybą dabar. Dešiniuoju pelės mygtuku spustelėkite "Uninstall.bat" – > pasirinkite "Vykdyti kaip administratorius".
Pašalinus paslaugą. Matome, kad faile "Log.txt" taip pat yra įrašyta duomenų eilutė.
#"Windows" paslaugų derinimas
"Windows" paslaugų negalima paleisti tiesiogiai derinant F5, F10. Taigi, kaip derinti programą, jei yra anomalija? 1: Visų pirma, naudokite administratorių, kad paleistumėte failą "Install.bat" ir leiskite programai paleisti pirmąją.
2: Grįžkite į VS ir meniu juostoje pasirinkite "Derinti" – > pasirinkite "Pridėti prie proceso".
3: Iššokančiojoje formoje pažymėkite "Rodyti visų vartotojų procesus", raskite .exe mūsų sugeneruotą programą ir spustelėkite "Pridėti".
4: Sulaužykite metodo tašką, kad kai jis veikia tam tikrą laiką, jis gali suaktyvinti derinimą.
Epilogas
"Windows" paslaugų derinimas yra labai varginantis, kartais programa parašyta problemoje, o paslauga negali paleisti, todėl ją sunkiau derinti. Paprastai rašant "Windows" paslaugas bus pateikiama konsolės programa. Derinkite jį konsolės programoje ir perkelkite į "Windows" paslaugas. Kitoje temoje bus aprašytas paprastesnis būdas sukurti "Windows" paslaugą.
Pastaba: Abiejų programų paleisti ir pašalinti paketiniai failai turi būti paleisti kaip administratoriai. Priešingu atveju tai bus neteisinga.
|