Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 36585|Válasz: 3

[ASP.NET] A C# egy Windows szolgáltatás, amely rendszeresen hajt végre feladatokat

[Linket másol]
Közzétéve 2019. 04. 27. 17:56:09 | | | |


előszó

Az előző cikk után a Windows Task Scheduler-ról ez a cikk a Windows szolgáltatások létrehozását rögzíti.
Környezet és eszközök

>Windows 10 rendszer

>VS 2017

SMS

1: Új megoldást hozz létre és hozz létre egy Windows szolgáltatást. A név "WindowsServiceDemo.exe






2: Dupla kattintás a "Service1.cs" fájlra, jobb kattintás az üres helyre – > válaszd a "Telepítő hozzáadása" opciót.







3: A generált két komponensben kattintson a "serviceProcessInstaller1" komponensre, és a tulajdonságok űrlapján állítsa be a "Account" fióktípust "LocalSystem"-re.





4: A generált két komponensben kattints a "serviceInstaller1" komponensre a tulajdonságok űrlapon, állítsd be a megfelelő tulajdonságokat, majd mentsd el.




5: Jobb kattints a "Service1.cs" gombra – > válaszd a "Kód megtekintése" opciót.






6: A megfelelő módszerben írd meg a feldolgozási logikát. OnStart() metódus: arra a metódusra utal, amely akkor lép be, amikor a Windows szolgáltatás elindul. OnStop(): Ahogy a neve is mutatja, ez a belépés módja, amikor a szolgáltatás megáll. Írhatunk egy időzítőt, hogy a program feldolgozza a logikát a rendszeres interakcióban.






7: Hozzon létre két jegyzettömbfájlt, nevezze meg és módosítsa a "Install.bat" és "Uninstall.bat" utótagneveket. Megjegyzés: A toldal neve .bat. Ragasztsd be a projektbe. És változtasd meg az attribútumot "Másolj helyre" címre.



8: Az imént létrehozott két fájl a szolgáltatás telepítésére és eltávolítására szolgál. Most írd meg a batch kódot ezekhez a két fájlhoz, és mentsd el.
Nyisd meg az "Install.bat" fájlt, és írd meg a következő kódot
Megjegyzés: a "WindowsServiceDemo.exe" az épp generált exe program. Az "AServiceTest" a "serviceName" a "serviceName" beállítva a "serviceInstaller1" komponensben.

Nyisd meg az "Uninstall.bat" fájlt, és írd meg a következő kódot


9: F6 generálja. A "bin\Debug" projekt könyvtárában. Jobb kattintással a "Install.bat" gombra – > válaszd a "Run as administrator" opciót.



Miután a szerviz telepítése befejeződött. Láthatjuk, hogy a "Log.txt" fájl 10 másodpercenként ír egy sor adatot.


Láthatjuk a telepített szolgáltatásokat.
Fusson – > írd be a "services.msc" jelszót, lépj be.



Állítsd le a szolgáltatást most. Jobb kattintás a "Uninstall.bat" gombra – > válaszd a "Run as administrator" opciót.



Miután a szolgáltatást eltávolították. Láthatjuk, hogy a "Log.txt" fájlhoz is van egy sor adat írva.



#Windows szolgáltatás hibakeresése

A Windows szolgáltatásokat nem indítható közvetlenül F5-tel, F10 hibakereséssel. Hogyan lehet hibakeresést végezni a programban, ha van valami rendellenesség?
1: Először is, használd az adminisztrátort a "Install.bat" fájl futtatására, és hagyd, hogy a program futjon először.

2: Menj vissza a VS-hez, és válaszd a menüsávban a "Debug" opciót – > válaszd a "Csatolj a folyamathoz".





3: A felugró űrlapon jelöld be a "Megjelenítsd az összes felhasználói folyamatot" opciót, keresd meg a generált .exe alkalmazást, és kattints a "Csatolás" gombra.




4: Törd meg a metódus pontját, hogy amikor egy bizonyos ideig fut, hibakeresést indítson el.



Epilógus

A Windows szolgáltatás hibakeresése nagyon problémás, néha a program egy problémában van írva, és a szolgáltatás nem tud elindulni, ami megnehezíti a hibakeresést. Általában a Windows szolgáltatások írásához konzolos alkalmazás kíséri. Hibáztasd a konzolos alkalmazásban, majd helyezd át a Windows szolgáltatásokra. A következő téma egy egyszerűbb módot mutat be Windows szolgáltatás létrehozására.


Megjegyzés: A két program által indított és eltávolított csomagfájlokat adminátorként kell futtatni. Ellenkező esetben téved.









Előző:Gyakori algoritmusok a nagy adatok megosztásához (alkalmazások)
Következő:A Topshelf használata C# ütemezett végrehajtási feladatokhoz
Közzétéve 2019. 05. 08. 10:59:16 |
Köszönöm, hogy megosztottad, pont időben, küldd el nekem
Közzétéve 2020. 06. 22. 14:04:33 |
Mindig jelentsd ezt a hibát
 Háziúr| Közzétéve 2020. 09. 07. 15:21:59 |
awclovelin Közzétéve: 2020-06-22 14:04
Mindig jelentsd ezt a hibát

A parancs futása hibás, ez a szolgáltatás nincs telepítve. Ha a parancssorra kattintva telepíted, akkor a következő bejegyzésemre nézheted.
A Topshelf használata C# ütemezett végrehajtási feladatokhoz
https://www.itsvse.com/thread-7503-1-1.html

Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com