Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 36585|Vastaus: 3

[ASP.NET] C# on Windows-palvelu, joka suorittaa tehtäviä säännöllisesti

[Kopioi linkki]
Julkaistu 27.4.2019 17.56.09 | | | |


johdanto

Jatkaen edellistä artikkelia Windows Task Schedulerista, tämä artikkeli tallentaa Windows-palveluiden luomisen.
Ympäristö ja työkalut

>Windows 10 -järjestelmä

>VS 2017

Tekstiviesti

1: Luo uusi ratkaisu ja luo Windows-palvelu. Nimi on "WindowsServiceDemo.exe






2: Kaksoisklikkaa "Service1.cs"-tiedostoa, napsauta hiiren oikealla tyhjää tilaa – > valitse "Lisää asennusohjelma".







3: Kahdessa luodussa komponentissa klikkaa "serviceProcessInstaller1"-komponenttia ja ominaisuuslomakkeessa aseta "Account"-tilityypiksi "LocalSystem".





4: Kahdessa generoidussa komponentissa klikkaa "serviceInstaller1"-komponenttia ominaisuuslomakkeessa, aseta vastaavat ominaisuudet ja tallenna sitten.




5: Napsauta hiiren oikealla "Service1.cs" – > valitse "Näytä koodi".






6: Vastaavassa menetelmässä kirjoitetaan prosessointilogiikka. OnStart()-metodi: viittaa metodiin, joka käynnistyy Windows-palvelun käynnistyessä. OnStop(): Kuten nimi kertoo, tämä on tapa mennä sisään, kun palvelu pysähtyy. Voimme kirjoittaa ajastimen, joka antaa ohjelman käsitellä logiikan tavallisessa yhdynnässä.






7: Luo kaksi muistivihkotiedostoa, nimeä ja muokkaa päätteiden nimet "Install.bat" ja "Uninstall.bat" Huom: Päätteen nimi on .bat. Liitä se projektin sisälle. Ja muuta attribuutti muotoon "Copy to local".



8: Kaksi juuri luomaamme tiedostoa ovat palvelun asentamista ja poistamista varten. Kirjoita nyt eräkoodi näihin kahteen tiedostoon ja tallenna.
Avaa "Install.bat"-tiedosto ja kirjoita seuraava koodi
Huomautus: "WindowsServiceDemo.exe" on juuri luotu exe-ohjelma. "AServiceTest" on "ServiceName"-ominaisuus "serviceInstaller1"-komponentissa.

Avaa "Uninstall.bat"-tiedosto ja kirjoita seuraava koodi


9: F6 tuottaa sen. Projektin "bin\Debug"-kansiossa. Napsauta hiiren oikealla "Install.bat" – > valitse "Suorita järjestelmänvalvojana".



Kun huoltoasennus on valmis. Näemme, että "Log.txt"-tiedosto kirjoittaa rivin dataa joka 10. sekunti.


Näemme asennetut palvelut.
Suorita – > syötä "services.msc", syötä sisään.



Lopeta palvelu nyt. Napsauta hiiren oikealla "Uninstall.bat" – > valitse "Suorita järjestelmänvalvojana".



Kun palvelu on poistettu. Näemme, että "Log.txt"-tiedostoon on myös kirjoitettu datarivi.



#Windows-palvelun virheenkorjaus

Windows-palveluita ei voi käynnistää suoraan F5:llä, F10 debuggataan. Miten siis debugata ohjelma, jos poikkeavuus ilmenee?
1: Ensinnäkin, käytä ylläpitäjää ajamaan "Install.bat"-tiedosto ja anna ohjelman käynnistyä ensin.

2: Palaa VS:ään ja valitse valikkopalkista "Debug" – > valitse "Liitä prosessiin".





3: Ponnahdusikkunassa valitse "Näytä kaikki käyttäjien prosessit", etsi .exe sovellus, jonka generoimme, ja klikkaa "Liitä".




4: Riko metodin piste niin, että kun se on käynnissä tietyn ajan, se voi laukaista virheenkorjauksen.



Epilogi

Windows-palvelun virheenkorjaus on todella hankalaa, joskus ohjelma kirjoitetaan johonkin ongelmaan, eikä palvelu voi käynnistyä, mikä vaikeuttaa virheenkorjausta. Yleensä Windows-palveluiden kirjoittamiseen liittyy konsolisovellus. Korjaa se konsolisovelluksessa ja siirrä se sitten Windows-palveluihin. Seuraava aihe kuvaa yksinkertaisempaa tapaa luoda Windows-palvelu.


Huomautus: Ohjelman käynnistämät ja poistamat erätiedostot on suoritettava ylläpitäjinä. Muuten se on virheellinen.









Edellinen:Yleiset algoritmit Big Datan jakamiseen (sovellukset)
Seuraava:Topshelfin käyttö C#-aikataulutetuissa suoritustehtävissä
Julkaistu 8.5.2019 10.59.16 |
Kiitos, että jaoit kokemuksesi, juuri ajoissa, lähetä se minulle
Julkaistu 22.6.2020 14.04.33 |
Ilmoita aina tästä virheestä
 Vuokraisäntä| Julkaistu 7.9.2020 15.21.59 |
awclovelin Julkaistu 2020-6-22 klo 14:04
Ilmoita aina tästä virheestä

Käynnissä oleva komento on väärä, tätä palvelua ei ole asennettu. Jos asennat sen napauttamalla komentoriviä, voit katsoa seuraavaa viestiäni.
Topshelfin käyttö C#-aikataulutetuissa suoritustehtävissä
https://www.itsvse.com/thread-7503-1-1.html

Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com