Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 36585|Atbildi: 3

[ASP.NET] C# ir Windows pakalpojums, kas regulāri izpilda uzdevumus

[Kopēt saiti]
Publicēts 27.04.2019 17:56:09 | | | |


priekšvārds

Turpinot iepriekšējo rakstu par Windows uzdevumu plānotāju, šajā rakstā tiks ierakstīta Windows pakalpojumu izveide.
Vide un rīki

>Windows 10 sistēma

>VS 2017

Teksts

1: Izveidojiet jaunu risinājumu un izveidojiet Windows pakalpojumu. Nosaukums ir "WindowsServiceDemo.exe






2: Veiciet dubultklikšķi uz faila "Service1.cs", ar peles labo pogu noklikšķiniet uz tukšās vietas - > atlasiet "Pievienot instalētāju".







3: Abos ģenerētajos komponentos noklikšķiniet uz komponenta "serviceProcessInstaller1" un rekvizītu veidlapā iestatiet konta veidu "Konts" uz "LocalSystem".





4: Abos ģenerētajos komponentos noklikšķiniet uz komponenta "serviceInstaller1", rekvizītu veidlapā iestatiet atbilstošos rekvizītus un pēc tam saglabājiet.




5: Ar peles labo pogu noklikšķiniet uz "Service1.cs" - > atlasiet "Skatīt kodu".






6: Atbilstošajā metodē uzrakstiet apstrādes loģiku. OnStart() metode: attiecas uz metodi, kas tiek ievadīta, startējot Windows pakalpojumu. OnStop(): Kā norāda nosaukums, tas ir veids, kā ievadīt, kad pakalpojums apstājas. Mēs varam uzrakstīt taimeri, lai ļautu programmai apstrādāt loģiku regulārā dzimumaktā.






7: Izveidojiet divus piezīmju bloka failus, attiecīgi nosauciet un modificējiet sufiksu nosaukumus "Install.bat" un "Uninstall.bat" Piezīme: Sufiksa nosaukums ir .bat. Ielīmējiet to projektā. Un mainiet atribūtu uz "Kopēt uz vietējo".



8: Divi faili, kurus mēs tikko izveidojām, ir paredzēti pakalpojuma instalēšanai un pakalpojuma atinstalēšanai. Tagad ierakstiet partijas kodu šiem diviem failiem un saglabājiet.
Atveriet failu "Install.bat" un ierakstiet šādu kodu
Piezīme: "WindowsServiceDemo.exe" ir tikko ģenerētā exe programma. "AServiceTest" ir "ServiceName", kas iestatīts komponentā "serviceInstaller1".

Atveriet failu "Uninstall.bat" un ierakstiet šādu kodu


9: F6 to ģenerē. Projekta direktorijā "bin\Debug". Ar peles labo pogu noklikšķiniet uz "Install.bat" - > atlasiet "Palaist kā administratoram".



Kad pakalpojuma instalēšana ir pabeigta. Mēs redzam, ka fails "Log.txt" ik pēc 10 sekundēm raksta datu rindu.


Mēs varam redzēt instalētos pakalpojumus.
Palaist - ievadiet > ievadiet "services.msc".



Pārtrauciet pakalpojumu tūlīt. Ar peles labo pogu noklikšķiniet uz "Uninstall.bat" > atlasiet "Palaist kā administratoram".



Pēc pakalpojuma atinstalēšanas. Mēs redzam, ka failā "Log.txt" ir arī ierakstīta datu rinda.



#Windows pakalpojumu atkļūdošana

Windows pakalpojumus nevar sākt tieši ar F5, F10 atkļūdošanu. Tātad, kā atkļūdot programmu, ja ir novirze?
1: Pirmkārt, izmantojiet administratoru, lai palaistu failu "Install.bat" un ļaujiet programmai palaist vispirms.

2: Atgriezieties VS un izvēlnes joslā atlasiet "Atkļūdot" - > atlasiet "Pievienot procesam".





3: Uznirstošajā veidlapā atzīmējiet "Rādīt visu lietotāju procesus", atrodiet mūsu ģenerēto .exe lietojumprogrammu un noklikšķiniet uz "Pievienot".




4: Pārtrauciet metodes punktu, lai, darbojoties noteiktu laiku, tas varētu izraisīt atkļūdošanu.



Epilogs

Windows pakalpojuma atkļūdošana ir ļoti apgrūtinoša, dažreiz programma ir uzrakstīta problēmā, un pakalpojums nevar sākt, kas apgrūtina atkļūdošanu. Parasti Windows pakalpojumu rakstīšanai tiks pievienota konsoles lietojumprogramma. Atkļūdojiet to konsoles lietojumprogrammā un pēc tam pārvietojiet to uz Windows pakalpojumiem. Nākamajā tēmā tiks aprakstīts vienkāršāks veids, kā izveidot Windows pakalpojumu.


Piezīme: Pakešu faili, ko palaiž un atinstalē abas programmas, ir jāpalaiž kā administratori. Pretējā gadījumā tas būs nepareizi.









Iepriekšējo:Kopīgi algoritmi lielo datu koplietošanai (lietojumprogrammas)
Nākamo:Topshelf izmantošana C# plānotajiem izpildes uzdevumiem
Publicēts 08.05.2019 10:59:16 |
Paldies, ka dalījāties, tieši laikā, nosūtiet to man
Publicēts 22.06.2020 14:04:33 |
Vienmēr ziņot par šo kļūdu
 Saimnieks| Publicēts 07.09.2020 15:21:59 |
awclovelin Publicēts 2020-6-22 14:04
Vienmēr ziņot par šo kļūdu

Komanda darbojas nepareizi, šis pakalpojums nav instalēts. Ja jūs to instalējat, pieskaroties komandrindai, varat atsaukties uz manu nākamo ziņu.
Topshelf izmantošana C# plānotajiem izpildes uzdevumiem
https://www.itsvse.com/thread-7503-1-1.html

Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com