Hvis du er som de fleste Windows-brugere, har du mange flotte små hjælpeprogrammer, der kører, når du starter Windows. Selvom dette fungerer godt for de fleste apps, er der nogle, der ville være rart at starte, selv før en bruger logger ind på pc'en. For at gøre dette skal du køre appen som en Windows-tjeneste.
Windows-tjenester er en særlig klasse af programmer, der er konfigureret til at starte og køre i baggrunden, normalt uden nogen form for brugergrænseflade og uden brug for en bruger til at logge på pc'en. Mange spillere og strømbrugere kender dem som de ting, du plejede at deaktivere for at hjælpe med at fremskynde dit system det er virkelig ikke nødvendigt mere .
Den primære fordel ved at køre en app som en tjeneste er, at du kan få et program til at starte, før en bruger logger ind. Det kan være særligt vigtigt med apps, der leverer vigtige tjenester, du vil have til rådighed, når du er væk fra din computer.
RELATEREDE: Forståelse og styring af Windows-tjenester
Et perfekt eksempel på dette er Plex , en medieserver-app, der kan streame lokalt indhold til næsten enhver enhed, du ejer. Sikker på, du kan lade det sidde i systembakken som et normalt program, men hvad hvis computeren genstarter på grund af strømafbrydelse eller planlagte opdateringer? Indtil du logger ind igen på pc'en, ville Plex ikke være tilgængelig. Det er irriterende, hvis du skal løbe til et andet rum for at starte Plex igen, mens din popcorn bliver kold, og super irriterende, hvis du er ude af byen og prøver at streame dine medier over internettet. Opsætning af Plex som en tjeneste ville løse dette problem.
Inden du går i gang, skal du være opmærksom på et par vigtige advarsler til at køre en app som en tjeneste:
- Appen placerer ikke et ikon i systembakken. Hvis du har brug for grænsefladen tilgængelig regelmæssigt til en app, er den muligvis ikke bedst egnet til at køre som en tjeneste.
- Når du har brug for at foretage konfigurationsændringer eller opdateringer, skal du stoppe tjenesten, køre programmet som en almindelig app, gøre hvad du skal gøre, stoppe programmet og derefter starte tjenesten igen.
- Hvis programmet allerede er indstillet til at køre, når Windows starter, skal du deaktivere det, så du ikke ender med to forekomster, der kører. De fleste programmer har en mulighed i grænsefladen til at skifte denne indstilling. Andre kan føje sig til din Opstartsmappe , så du kan fjerne dem der.
Klar til at rulle? Lad os tale om, hvordan vi konfigurerer det.
Trin et: Installer SrvStart
For at køre en app som en tjeneste skal du bruge et lille værktøj fra tredjepart. Der er flere derude, men vores favorit er SrvStart . Det blev oprindeligt designet til Windows NT og fungerer med næsten enhver version af Windows fra Windows XP og op.
For at komme i gang skal du gå over til
SrvStart download-side
og tag fat i hjælpeprogrammet. Downloaden indeholder kun fire filer (to DLL- og to EXE-filer). Der er ingen installatør; i stedet kopier disse til din computers
C: \ Windows
mappe disse til din primære Windows-mappe for at "installere" SrvStart.
Vi antager også, at du allerede har installeret og opsat det program, du vil omdanne til en tjeneste, men hvis du ikke har gjort det, ville det nu også være et godt tidspunkt at gøre det.
Trin to: Opret en konfigurationsfil til den nye tjeneste
Dernæst vil du oprette en konfigurationsfil, som SrvStart læser for at oprette tjenesten. Der er meget, du kan gøre med SrvStart, og du kan læse de fulde detaljer om alle konfigurationsindstillingerne på
dokumentationsside
. I dette eksempel vil vi kun bruge to kommandoer:
start op
, som specificerer det program, der skal startes, og
nedlukningsmetode
, som fortæller SrvStart, hvordan man lukker programmet, når den respektive tjeneste stoppes.
Start Notepad, og opret din konfigurationsfil ved hjælp af nedenstående format. Her bruger vi Plex, men du kan oprette en fil til ethvert program, du vil køre som en tjeneste. Det
start op
kommando angiver simpelthen stien, hvor den eksekverbare fil ligger. Til
nedlukningsmetode
kommando, vi bruger
winmessage
parameter, som får SrvStart til at sende en Windows close-besked til alle vinduer, der åbnes af tjenesten.
[Plex] startup = "C: \ Program Files (x86) \ Plex \ Plex Media Server \ Plex Media Server.exe" shutdown_method = winmessage
Juster naturligvis stien og navnet i henhold til det program, du starter.
Gem den nye konfigurationsfil, hvor du vil, og udskift .txt-udvidelsen med en .ini-udvidelse. Noter filnavnet, da vi får brug for det i næste trin. For at lette at skrive ved kommandoprompten, foreslår vi at gemme denne fil midlertidigt lige på dit C: -drev.
Trin tre: Brug kommandoprompten til at oprette den nye tjeneste
Dit næste trin er at bruge kommandoen Windows Service Controller (SC) til at oprette den nye service baseret på kriterierne i din konfigurationsfil. Åbn kommandoprompt ved at højreklikke på Start-menuen (eller trykke på Windows + X), vælge "Kommandoprompt (administrator)" og derefter klikke på Ja for at lade den køre med administrative rettigheder.
Brug følgende syntaks til kommandoprompten til at oprette den nye tjeneste:
SC CREATE <servicename> Displayname = "<servicename>" binpath = "srvstart.exe <servicename> -c <path to srvstart config file>" start = <starttype>
Der er et par ting at bemærke i denne kommando. For det første har hvert lige tegn (=) et mellemrum efter sig. Det er påkrævet. Også den
<servicenavn>
værdi er helt op til dig. Og endelig til
<starttype>
værdi, skal du bruge
auto
så tjenesten starter automatisk med Windows.
Så i vores Plex-eksempel vil kommandoen se sådan ud:
SC CREATE Plex Displayname = "Plex" binpath = "srvstart.exe Plex -c C: PlexService.ini" start = auto
Ja, du læste rigtigt: Jeg brugte
C: PlexService.ini
i stedet for
C: \ PlexService.ini
. Kommandoen kræver, at du fjerner skråstreg.
Når du kører kommandoen, skal du modtage en SUCCESS-besked, hvis alt går godt.
Fra dette tidspunkt kører din nye tjeneste, når Windows starter. Hvis du åbner Windows Services-grænsefladen (skal du bare klikke på Start og skrive "Services"), kan du finde og konfigurere den nye tjeneste ligesom enhver anden.
Og det er alt der er ved det. Hvis du har apps, der starter med Windows, og du hellere vil starte, uden at en bruger skal logge på, er det let nok at gøre enhver app til en tjeneste. Vi har kun lige rørt ved den grundlæggende metode til oprettelse og kørsel af en ny tjeneste, men der er meget mere, du kan gøre med SrvStart for at finjustere, hvordan en tjeneste kører. Sørg for at tjekke dokumentationen, hvis du gerne vil vide mere.