Rularea ca pogramma serviciu ferestre

Există situații în care este necesar pentru a rula un anumit program ca un serviciu, și anume, a se asigura că acesta este rulat automat atunci când sistemul este pornit, indiferent - utilizatorul este conectat sau nu.
În mod ideal, putem crea un dosar, de exemplu:
c: \ autorun și pune BAT-fișiere în ea, etichete, etc. În acest caz, toate aceste lucruri vor fi rulate la pornirea sistemului. Aproape ca dosarul de pornire.

Deci Pentru a începe, avem nevoie de program srvany.exe și InstSrv.exe, incluse în Instrumente pentru Windows Server Resource Kit 2K3 de pe site-ul Web Microsoft sau pachetul corespunzător fișierele de mai jos

Descărcați și instalați kit-ul de resurse. Ne scoate de acolo și srvany.exe InstSrv.exe. Mai mult, pentru comoditate, vom presupune că srvany.exe InstSrv.exe și suntem în folderul c: \ autorun \ bin. Creați același runatsart.bat (încă gol).
La termenul de comandă este scris:
c: \ autorun \ bin \ instsrv RunAtStart c: \ autorun \ bin \ srvany.exe
stabilindu-se astfel SrvAny ca un serviciu numit RunAtStart. Puteți merge la lista de servicii și de a verifica acest lucru. Mai departe. Creați un fișier .reg:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ RunAtStart]
"DisplayName" = "RunAtStart"
„Descriere“ = „comenzi personalizate rula la Sistemul de pornire“

Importiruruem creat un fișier de la registru. După aceea, ne-am stabilit nou creat de serviciu RunAtStart modul de executare automată.

Acum este momentul pentru a edita RunAtStart.bat. conținutul său ceva de genul:

@echo off
dacă% 1. ==. Goto% 2
setlocal
chcp 1251

set log =% temp% \ RunAtSart.log
set rundir = c: \ autorun

echo RunAtStart: Rularea la .ate %% time% >>% log%
pentru %% I în (% rundir% \ *. *) suna% 0. do_run „%%

ni "" %% I "
RunAtStart net stop

Goto EOF
: do_run
echo Run:%

4 >>% log%
începe „%

4 '
Goto EOF
: EOF
Două variabile log rundir și pot fi modificate. Totul este pregătit. Reporniți sistemul dvs., uita-te în fișierul% temp% \ RunAtSart.log, a se vedea acolo data de încărcare a sistemului și o listă de programe care rulează. înșiși Programele de pe ecran, nu putem vedea. Și pentru a le vedea nu avem :( maxima pe care o putem face -. A se vedea managerul lor de activitate și de acolo pentru a finaliza punerea în aplicare a acestora.

tot acest mecanism este după cum urmează:

Serviciul RunAtStart (srvany.exe) este pornit la pornirea sistemului
la rândul său, acesta pornește un parametru predeterminat (în registru), comanda: c: \ windows \ cmd.exe / c RunAtStart.bat
RunAtStart.bat rulează toate fișierele din c: \ autorun

Important! În mod implicit, programul începe numele de utilizator al sistemului, astfel încât pot exista probleme cu drepturile, în special pe unități de rețea.
programe pot rula această metodă nu este printat pe ecran orice întrebări, mesajul de invitație, apăsați OK și etc. Datorită faptului că noi nu suntem capabili de a interacționa cu un program care rulează, caseta de dialog cu întrebarea, ea va aștepta răspunsul utilizatorului. Noi nu știam despre asta. De aceea, de exemplu, BAT-fișiere, aveți nevoie pentru a evita comanda de pauză, este adesea adăugat la depanare, și să aplice în schimb structura:
în cazul în pauză definit de utilizator
Cu toate acestea, la momentul respectiv, puteți activa depanare casetă de selectare Se permite sevice interacționa cu Spațiul de lucru în setările de serviciu. Acest lucru ne va permite să vedem ferestrele programelor care rulează și de a interacționa cu ei.

Notă: Scoateți serviciul specificat utilizând următoarea comandă:
c: \ autorun \ bin \ instsrv RunAtStart elimina

Toate fișierele enumerate mai sus sunt aici. Despachetează pe unitatea C: Calea absolută către fișierul poate fi editat în conformitate cu directorul unde toate acestea vor minți.