Windows – dowolny program jako serwis

Czasem istnieje potrzeba, aby zwykły program działał jako serwis w systemie Windows. Potrzebny będzie do tego Windows Resource Kit, który zawiera dwa programy:

  • Instsrv.exe – Instalator serwisów
  • Srvany.exe – Aplikacja uruchamiająca programy jako serwisy

W drugiej kolejności uruchamiamy Instsrv.exe z następująca składnią:

ścieżka1\Instsrv.exe NazwaSerwisu ścieżka2\Srvany.exe

gdzie:

  • ścieżka1 – to ścieżka dostępu do pliku instsrv.exe
  • NazwaSerwisu – Dowolna nazwa identyfikująca nowy serwis
  • ścieżka2 – ścieżka dostępu do pliku srvany.exe (Ja kopiuję ten plik tam gdzie znajduje się właściwy program będący naszym serwisem)

Po poprawnym zainstalowaniu usługi przechodzimy do rejestu i szukamy naszego serwisu w kluczu: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NazwaSerwisu

Pod naszym serwisem dodajemy nowy klucz o nazwie:

Parameters

!!!Uwaga!!! Microsoft podaje polską nazwę Parametry – jest ona błędna.

A w tym kluczu dodajemy ciąg REG_SZ o nazwie:

Application

i wartości:

ścieżka do aplikacji\plikWykonywalny.exe

Jak to działa? Właściwie jako serwis uruchamia się program srvany.exe, następnie odczytuje on z właściwego klucza rejestru ścieżkę i nazwę programu do uruchomienia. Uruchamia go jednak w specyficzny sposób, bez pokazywania okien i bez możliwości interakcji z użytkownikiem.

Informacje zaczerpnięte zostały ze strony Microsoft.