Slik kjører du hvilket som helst program som bakgrunnstjeneste i Windows
Hvis du er som de fleste Windows-brukere, har du mange flotte, små verktøy som kjører når du starter Windows. Selv om dette fungerer bra for de fleste apper, er det noen som ville være fint å starte selv før en bruker logger på PCen. For å gjøre dette må du kjøre appen som en Windows-tjeneste.
Windows-tjenester er en spesiell klasse med programmer som er konfigurert til å starte og kjøre i bakgrunnen, vanligvis uten noen brukergrensesnitt og uten at en bruker må logge på PCen. Mange spillere og strømbrukere kjenner dem som de tingene du pleide å deaktivere for å hjelpe deg med å øke hastigheten på systemet ditt, men det er egentlig ikke nødvendig lenger.
Den primære fordelen ved å kjøre en app som en tjeneste er at du kan starte et program før en bruker logger inn. Det kan være spesielt viktig med programmer som gir viktige tjenester du vil være tilgjengelige når du er borte fra datamaskinen din.
Et perfekt eksempel på dette er Plex, en media server app som kan streame lokalt innhold til omtrent hvilken som helst enhet du eier. Sikker på at du kan la den sitte i systemstatusfeltet som et vanlig program, men hva om datamaskinen starter på nytt på grunn av strømbrudd eller planlagte oppdateringer? Inntil du logger deg inn på PCen, vil Plex ikke være tilgjengelig. Det er irriterende hvis du må løpe til et annet rom for å starte Plex-sikkerhetskopiering mens popcornen blir kald og veldig irriterende hvis du er ute av byen og prøver å streame mediene dine over Internett. Å sette opp Plex som en tjeneste ville løse det problemet.
Før du begynner, bør du være oppmerksom på et par viktige forbehold for å kjøre en app som en tjeneste:
- Appen vil ikke sette et ikon i systemstatusfeltet. Hvis du trenger grensesnittet tilgjengelig regelmessig for en app, er det kanskje ikke best egnet til å kjøre som en tjeneste.
- Når du må gjøre konfigurasjonsendringer eller oppdateringer, må du stoppe tjenesten, kjøre programmet som en vanlig app, gjøre det du trenger å gjøre, stoppe programmet og start tjenesten på nytt..
- Hvis programmet allerede er konfigurert til å kjøre når Windows starter, må du deaktivere det slik at du ikke ender med to forekomster som kjører. De fleste programmer har et alternativ i grensesnittet for å bytte denne innstillingen. Andre kan legge seg til oppstartsmappen din, slik at du kan fjerne dem der.
Klar til å rulle? La oss snakke om hvordan du setter det opp.
Trinn ett: Installer SrvStart
For å kjøre en app som en tjeneste, trenger du et lite tredjepartsverktøy. Det er flere der ute, men vår favoritt er SrvStart. Det ble opprinnelig utviklet for Windows NT, og vil fungere med omtrent hvilken som helst versjon av Windows fra Windows XP på opp.
For å komme i gang, gå over til SrvStart-nedlastingssiden og ta tak i verktøyet. Nedlastingen inneholder bare fire filer (to DLL og to EXE-filer). Det er ingen installatør; I stedet kopierer du disse til datamaskinens C: \ Windows
mapp disse til hovedmappen din for å "installere" SrvStart.
Vi kommer også til å anta at du allerede har installert og satt opp hvilket program du skal forvandle deg til en tjeneste, men hvis du ikke har det, ville det være en god tid å gjøre det også.
Trinn to: Opprett en konfigurasjonsfil for den nye tjenesten
Deretter vil du opprette en konfigurasjonsfil som SrvStart vil lese for å opprette tjenesten. Det er mye du kan gjøre med SrvStart, og du kan lese de fulle detaljene på alle konfigurasjonsalternativer på dokumentasjonssiden. For dette eksempelet skal vi bare bruke to kommandoer: oppstart
, som spesifiserer programmet for å starte, og shutdown_method
, som forteller SrvStart hvordan lukke programmet når den respektive tjenesten er stoppet.
Slå opp Notisblokk og opprett konfigurasjonsfilen din ved hjelp av formatet nedenfor. Her bruker vi Plex, men du kan lage en fil for ethvert program du vil kjøre som en tjeneste. De oppstart
kommandoen spesifiserer bare banen der den kjørbare filen ligger. For shutdown_method
kommando, vi bruker winmessage
parameter, som forårsaker at SrvStart sender en Windows Lukk melding til alle vinduer åpnet av tjenesten.
[Plex] oppstart = "C: \ Programmer (x86) \ Plex \ Plex Media Server \ Plex Media Server.exe" shutdown_method = winmessage
Åpenbart, juster banen og navnet i henhold til programmet du starter.
Lagre den nye konfigurasjonsfilen hvor du vil, og erstatt .txt-utvidelsen med en .ini-utvidelse. Legg merke til filnavnet, siden vi trenger det i neste trinn. For enkel å skrive på kommandoprompt, foreslår vi at du lagrer denne filen midlertidig rett på C: -drevet.
Trinn tre: Bruk kommandoprompt til å opprette den nye tjenesten
Ditt neste trinn bruker kommandoen Windows Service Controller (SC) for å opprette den nye tjenesten basert på kriteriene i konfigurasjonsfilen din. Åpne kommandoprompt ved å høyreklikke på Start-menyen (eller trykke på Windows + X), velg "Kommandoprompt (Admin)", og klikk deretter Ja for å la det kjøre med administrative rettigheter.
Ved kommandoprompt, bruk følgende syntaks for å opprette den nye tjenesten:
SC CREATE Displaynavn = "" binpath = "srvstart.exe -c" start =
Det er et par ting å merke seg i den kommandoen. For det første har hvert like tegn (=) en plass etter det. Som kreves. Også, den verdien er helt opp til deg. Og til slutt, for
verdi, vil du bruke
auto
slik at tjenesten starter automatisk med Windows.
Så i vårt Plex eksempel ville kommandoen se slik ut:
SC CREATE Plex Displaynavn = "Plex" binpath = "srvstart.exe Plex-c C: PlexService.ini" start = auto
Ja, du leser det riktig: Jeg brukte C: PlexService.ini
i stedet for C: \ PlexService.ini
. Kommandoen krever at du fjerner skråstrek.
Når du kjører kommandoen, bør du motta en SUCCESS-melding hvis alt går bra.
Fra dette tidspunktet vil din nye tjeneste kjøre når Windows starter. Hvis du åpner Windows Services-grensesnittet (bare klikk på Start og skriv "Tjenester"), kan du finne og konfigurere den nye tjenesten akkurat som du ville noe annet.
Og det er alt der er til det. Hvis du har programmer som starter med Windows, og du heller vil starte uten at du trenger en bruker til å logge inn, er det enkelt nok til å gjøre en app til en tjeneste. Vi har bare bare rørt på den grunnleggende metoden for å skape og kjøre en ny tjeneste, men det er mye mer du kan gjøre med SrvStart for å finjustere hvordan en tjeneste kjører. Husk å sjekke ut dokumentasjonen hvis du vil lære mer.