Cum se execută orice program ca serviciu de fundal în Windows

Cuprins:

Video: Cum se execută orice program ca serviciu de fundal în Windows

Video: Cum se execută orice program ca serviciu de fundal în Windows
Video: WHAT IS .Net Framework and what does it do in Windows May 14th 2020 2024, Martie
Cum se execută orice program ca serviciu de fundal în Windows
Cum se execută orice program ca serviciu de fundal în Windows
Anonim
Dacă sunteți ca majoritatea utilizatorilor de Windows, aveți foarte multe utilități foarte mici care se execută atunci când porniți Windows. În timp ce acest lucru funcționează excelent pentru majoritatea aplicațiilor, există unele care ar fi frumos să înceapă chiar înainte ca un utilizator să se conecteze la PC. Pentru a face acest lucru, va trebui să rulați aplicația ca serviciu Windows.
Dacă sunteți ca majoritatea utilizatorilor de Windows, aveți foarte multe utilități foarte mici care se execută atunci când porniți Windows. În timp ce acest lucru funcționează excelent pentru majoritatea aplicațiilor, există unele care ar fi frumos să înceapă chiar înainte ca un utilizator să se conecteze la PC. Pentru a face acest lucru, va trebui să rulați aplicația ca serviciu Windows.

Serviciile Windows sunt o clasă specială de programe configurate să lanseze și să ruleze în fundal, de regulă fără interfața de utilizator și fără a avea nevoie de un utilizator să se conecteze la PC. Mulți gameri și utilizatori de putere le cunosc ca acele lucruri pe care le obișnuiai să le dezactivați pentru a vă ajuta să accelerați sistemul, deși acest lucru nu este necesar.

Avantajul principal al difuzării unei aplicații ca serviciu este că puteți avea un program de pornire înainte ca un utilizator să se conecteze. Acest lucru poate fi deosebit de important în cazul aplicațiilor care furnizează servicii importante pe care doriți să le aveți la dispoziție atunci când nu vă aflați la computer.

Un exemplu perfect al acestui lucru este Plex, o aplicație server media care poate transmite conținutul local la aproape orice dispozitiv pe care îl dețineți. Sigur, l-ai lăsa să stea în tava de sistem ca un program normal, dar ce se întâmplă dacă computerul se repornește din cauza unei întreruperi de alimentare sau a unor actualizări programate? Până când nu vă conectați la PC, Plex nu ar fi disponibil. Asta e iritant daca trebuie sa fugi in alta camera pentru a incepe Plex inapoi in timp ce popcornul devine frig si foarte iritant daca esti afara orasului si incerci sa iti transmita stream-urile prin Internet. Setarea serviciului Plex ca serviciu ar rezolva problema respectivă.

Înainte de a începe, ar trebui să știți că există câteva avertismente importante pentru a rula o aplicație ca serviciu:

  • Aplicația nu va pune o pictogramă în tava de sistem. Dacă aveți nevoie de interfața disponibilă în mod regulat pentru o aplicație, este posibil să nu fie cea mai potrivită pentru a rula ca serviciu.
  • Când trebuie să faceți schimbări de configurație sau actualizări, va trebui să opriți serviciul, să executați programul ca o aplicație obișnuită, să faceți ceea ce trebuie să faceți, să opriți programul și apoi să reporniți din nou serviciul.
  • Dacă programul este deja setat să se execute la pornirea Windows, va trebui să îl dezactivați astfel încât să nu ajungeți la două instanțe în execuție. Majoritatea programelor au o opțiune în interfață pentru a comuta această setare. Alții se pot adăuga în folderul Startup, astfel încât să le puteți elimina acolo.

Sunteți pregătit să vă roșiți? Să vorbim despre cum să-l punem în scenă.

Pasul unu: Instalarea programului SrvStart

Pentru a rula o aplicație ca serviciu, veți avea nevoie de o utilitate mică, terță parte. Există mai multe acolo, dar preferatul nostru este SrvStart. Acesta a fost inițial conceput pentru Windows NT și va funcționa cu aproape orice versiune de Windows din Windows XP în sus.

Pentru a începe, mergeți la pagina de descărcare SrvStart și apucați utilitarul. Descărcarea conține doar patru fișiere (două fișiere DLL și două fișiere EXE). Nu există instalator; copiați-le pe acestea în computer

C:Windows

folderul în directorul Windows principal pentru a "instala" SrvStart.

De asemenea, vom presupune că ați instalat deja și ați stabilit orice program pe care îl veți transforma într-un serviciu, dar dacă nu ați făcut-o, acum ar fi un moment bun și pentru a face acest lucru.
De asemenea, vom presupune că ați instalat deja și ați stabilit orice program pe care îl veți transforma într-un serviciu, dar dacă nu ați făcut-o, acum ar fi un moment bun și pentru a face acest lucru.

Pasul al doilea: Creați un fișier de configurare pentru noul serviciu

Apoi, veți dori să creați un fișier de configurare pe care SrvStart îl va citi pentru a crea serviciul. Există multe lucruri pe care le puteți face cu programul SrvStart și puteți citi detaliile complete despre toate opțiunile de configurare de pe pagina de documentare. Pentru acest exemplu, vom folosi doar două comenzi:

startup

care specifică programul de lansare și

shutdown_method

care îi spune lui SrvStart cum să închidă programul când serviciul respectiv este oprit.

Porniți Notepad și creați fișierul de configurare utilizând formatul de mai jos. Aici, folosim Plex, dar puteți crea un fișier pentru orice program pe care doriți să-l executați ca serviciu.

startup

comanda specifică pur și simplu calea în care se află fișierul executabil. Pentru

shutdown_method

comanda, folosim

winmessage

parametru, care determină SrvStart să trimită un mesaj de închidere a Windows către orice ferestre deschise de serviciu.

[Plex] startup='C:Program Files (x86)PlexPlex Media ServerPlex Media Server.exe' shutdown_method=winmessage

Evident, ajustați calea și numele în funcție de programul pe care îl lansați.

Salvați noul fișier de configurare ori de câte ori doriți și înlocuiți extensia.txt cu o extensie.ini. Notați numele fișierului, deoarece vom avea nevoie de el în pasul următor. Pentru a facilita tastarea la Command Prompt, vă sugerăm să salvați temporar acest fișier pe unitatea dvs. C:
Salvați noul fișier de configurare ori de câte ori doriți și înlocuiți extensia.txt cu o extensie.ini. Notați numele fișierului, deoarece vom avea nevoie de el în pasul următor. Pentru a facilita tastarea la Command Prompt, vă sugerăm să salvați temporar acest fișier pe unitatea dvs. C:

Pasul al treilea: Utilizați linia de comandă pentru a crea noul serviciu

Următorul pas este să utilizați comanda Windows Service Controller (SC) pentru a crea noul serviciu pe baza criteriilor din fișierul de configurare. Deschideți promptul de comandă făcând clic cu butonul din dreapta pe meniul Start (sau apăsând pe Windows + X), selectând "Command Prompt (Admin)" și apoi dând clic pe Yes pentru a permite acestuia să ruleze cu privilegii administrative.

La Command Prompt, utilizați următoarea sintaxă pentru a crea noul serviciu:
La Command Prompt, utilizați următoarea sintaxă pentru a crea noul serviciu:

SC CREATE Displayname= '' binpath= 'srvstart.exe -c ' start=

Există câteva lucruri de remarcat în acea comandă. Mai întâi, fiecare semn egal (=) are un spațiu după el. Este necesar. De asemenea

valoarea depinde în întregime de dvs. Și, în sfârșit, pentru

valoare, veți dori să utilizați

auto

astfel încât serviciul să pornească automat cu Windows.

Astfel, în exemplul nostru Plex, comanda ar arăta astfel:

SC CREATE Plex Displayname= 'Plex' binpath= 'srvstart.exe Plex -c C:PlexService.ini' start= auto

Da, ați citit acest drept: am folosit

C:PlexService.ini

in loc de

C:PlexService.ini

. Comanda solicită eliminarea slash-ului.

Când executați comanda, ar trebui să primiți un mesaj SUCCESS dacă totul merge bine.

Recomandat: