wtorek, 8 września 2009

SC.exe, a kontrola serwisów w Windows [PL]

Promuj

Jakiś czas temu opisywałem jak można przy pomocy platformy .NET utworzyć i zainstalować serwis w systemie Windows. W tamtym przypadku do instalacji bądź deinstalacji serwisów zostały wykorzystane odpowiednie klasy instalacyjne, które wykorzystane są podczas instalacji, bądź deisntalacji całego produktu. Zdarza się jednak, że nie zadziałają one jak należy (np. nie potrafią usunąć serwisu), czasami po prostu nie chcemy uruchamiać instalatora produktu by przetestować nasz serwis lub chcemy jako serwis uruchomić zupełnie inną aplikację (serwis WWW, repozytorium, czy cokolwiek innego).. Czy jest więc możliwość "ręcznego" stworzenia lub usunięcia serwisu?

Okazuje się że TAK.

Można w tym celu wykorzystać narzędzie działające w linii poleceń systemu Windows: sc.exe .

Szczegółowe informacje na temat narzędzia można znaleźć tutaj: http://technet.microsoft.com/en-us/library/cc754599%28WS.10%29.aspx. Jak widać lista opcji jest dość spora. Ja w tym artykule chciałbym się skupić się na sposobie instalacji i usunięcia serwisu w systemie Windows

Instalacja serwisu Windows

W celu instalacji serwisu wykorzystujemy polecenie sc create o następującej składni:

sc [<ServerName>] create [<ServiceName>]
[type= {own | share | kernel | filesys | rec | interact type= {own | share}}] 
[start= {boot | system | auto | demand | disabled}] [error= {normal | severe | critical | ignore}]
[binpath= <BinaryPathName>] [group= <LoadOrderGroup>] 
[tag= {yes | no}] [depend= <dependencies>]
[obj= {<AccountName> | <ObjectName>}] 
[displayname= <DisplayName>] [password= <Password>]

w najczęstszym przypadku będzie to:

sc create MojaNazwaSerwisu binpath="Sciezka_do_pliku_wykonywalnego_serwisu_razem_z_ew_argumentami"

Usuwanie serwisu Windows

W celu usunięcia serwisu wykorzystujemy polecenie sc delete o następującej składni:

sc [<ServerName>] delete [<ServiceName>]

w najczęstszym przypadku będzie to:

sc delete MojaNazwaSerwisu 
Promuj

2 komentarze:

Posty powiązane / Related posts