Jeśli jesteś jak większość użytkowników systemu Windows, masz wiele świetnych, małych narzędzi, które działają podczas uruchamiania systemu Windows. Chociaż działa to świetnie w przypadku większości aplikacji, niektóre z nich fajnie byłoby rozpocząć, nawet zanim użytkownik zaloguje się do komputera. Aby to zrobić, musisz uruchomić aplikację jako usługę systemu Windows.
Usługi systemu Windows to specjalna klasa programów, które są skonfigurowane do uruchamiania i działania w tle, zwykle bez żadnego interfejsu użytkownika i bez konieczności logowania się użytkownika do komputera. Wielu graczy i zaawansowanych użytkowników zna je jednak jako te, które wyłączałeś, aby przyspieszyć działanie systemu to już naprawdę nie jest konieczne .
Podstawową zaletą uruchamiania aplikacji jako usługi jest to, że program może zostać uruchomiony, zanim użytkownik się zaloguje. Może to być szczególnie ważne w przypadku aplikacji udostępniających ważne usługi, które mają być dostępne, gdy jesteś z dala od komputera.
ZWIĄZANE Z: Zrozumienie i zarządzanie usługami Windows
Doskonałym tego przykładem jest Plex , aplikacja serwera multimediów, która może przesyłać lokalną zawartość do dowolnego posiadanego urządzenia. Jasne, możesz pozwolić mu siedzieć w zasobniku systemowym jak normalny program, ale co, jeśli komputer uruchomi się ponownie z powodu przerwy w zasilaniu lub zaplanowanych aktualizacji? Dopóki nie zalogujesz się ponownie na komputerze, Plex nie będzie dostępny. To irytujące, jeśli musisz biec do innego pokoju, aby uruchomić Plex z powrotem, gdy popcorn stygnie, i bardzo irytujące, jeśli jesteś poza miastem i próbujesz przesyłać strumieniowo swoje multimedia przez Internet. Skonfigurowanie Plex jako usługi rozwiązałoby ten problem.
Przed rozpoczęciem należy pamiętać o kilku ważnych zastrzeżeniach dotyczących uruchamiania aplikacji jako usługi:
- Aplikacja nie umieści ikony w zasobniku systemowym. Jeśli potrzebujesz interfejsu, który jest regularnie dostępny dla aplikacji, może nie nadawać się najlepiej do działania jako usługa.
- Gdy zajdzie potrzeba wprowadzenia zmian lub aktualizacji konfiguracji, należy zatrzymać usługę, uruchomić program jako zwykłą aplikację, zrobić to, co trzeba, zatrzymać program, a następnie ponownie uruchomić usługę.
- Jeśli program jest już skonfigurowany do uruchamiania podczas uruchamiania systemu Windows, musisz to wyłączyć, aby nie zostały uruchomione dwie instancje. Większość programów ma w interfejsie opcję przełączania tego ustawienia. Inni mogą dodać się do twojego Startup folder , więc możesz je tam usunąć.
Gotowy by skręcić? Porozmawiajmy o tym, jak to skonfigurować.
Krok pierwszy: Zainstaluj SrvStart
Aby uruchomić aplikację jako usługę, będziesz potrzebować małego narzędzia innej firmy. Jest ich kilka, ale naszym ulubionym jest SrvStart . Został pierwotnie zaprojektowany dla systemu Windows NT i będzie działał z niemal każdą wersją systemu Windows od Windows XP i nowszych.
Aby rozpocząć, przejdź do
SrvStart strona pobierania
i weź narzędzie. Pobrany plik zawiera tylko cztery pliki (dwa pliki DLL i dwa pliki EXE). Nie ma instalatora; zamiast tego skopiuj je do swojego komputera
C: \ Windows
umieść je w folderze głównym systemu Windows, aby „zainstalować” SrvStart.
Zakładamy również, że masz już zainstalowany i skonfigurowany program, który zamierzasz zamienić w usługę, ale jeśli tego nie zrobiłeś, teraz też byłby dobry moment, aby to zrobić.
Krok drugi: Utwórz plik konfiguracyjny dla nowej usługi
Następnie należy utworzyć plik konfiguracyjny, który SrvStart odczyta w celu utworzenia usługi. Dzięki SrvStart można wiele zrobić i przeczytać pełne informacje o wszystkich opcjach konfiguracyjnych w
strona dokumentacji
. W tym przykładzie użyjemy tylko dwóch poleceń:
uruchomienie
, który określa program do uruchomienia i
shutdown_method
, który informuje SrvStart, jak zamknąć program po zatrzymaniu odpowiedniej usługi.
Uruchom Notatnik i utwórz plik konfiguracyjny przy użyciu poniższego formatu. Tutaj używamy Plex, ale możesz utworzyć plik dla dowolnego programu, który chcesz uruchomić jako usługę. Plik
uruchomienie
polecenie po prostu określa ścieżkę, w której znajduje się plik wykonywalny. Dla
shutdown_method
polecenie, używamy
winmessage
parametr, który powoduje, że SrvStart wysyła komunikat o zamknięciu systemu Windows do wszystkich okien otwartych przez usługę.
[Plex] startup = „C: \ Program Files (x86) \ Plex \ Plex Media Server \ Plex Media Server.exe” shutdown_method = winmessage
Oczywiście dostosuj ścieżkę i nazwę zgodnie z uruchamianym programem.
Zapisz nowy plik konfiguracyjny w dowolnym miejscu i zamień rozszerzenie .txt na rozszerzenie .ini. Zanotuj nazwę pliku, ponieważ będziemy jej potrzebować w następnym kroku. Aby ułatwić pisanie w wierszu polecenia, sugerujemy tymczasowe zapisanie tego pliku bezpośrednio na dysku C :.
Krok trzeci: Użyj wiersza polecenia, aby utworzyć nową usługę
Następnym krokiem jest użycie polecenia kontrolera usług systemu Windows (SC) w celu utworzenia nowej usługi na podstawie kryteriów w pliku konfiguracyjnym. Otwórz wiersz polecenia, klikając prawym przyciskiem myszy menu Start (lub naciskając Windows + X), wybierając „Wiersz polecenia (administrator)”, a następnie klikając Tak, aby zezwolić na uruchomienie z uprawnieniami administratora.
W wierszu polecenia użyj następującej składni, aby utworzyć nową usługę:
SC CREATE <nazwa usługi> Displayname = "<nazwa usługi>" binpath = "srvstart.exe <nazwa usługi> -c <ścieżka do pliku konfiguracyjnego srvstart>" start = <starttype>
W poleceniu tym należy zwrócić uwagę na kilka rzeczy. Po pierwsze, po każdym znaku równości (=) znajduje się spacja. To jest wymagane. Ponadto
<nazwa usługi>
wartość zależy wyłącznie od Ciebie. I na koniec dla
<typ startu>
wartość, której będziesz chciał użyć
automatyczny
tak, że usługa uruchamia się automatycznie w systemie Windows.
W naszym przykładzie Plex polecenie wyglądałoby tak:
SC CREATE Plex Displayname = "Plex" binpath = "srvstart.exe Plex -c C: PlexService.ini" start = auto
Tak, dobrze przeczytałeś: użyłem
C: PlexService.ini
zamiast
C: \ PlexService.ini
. Polecenie wymaga usunięcia ukośnika.
Po uruchomieniu polecenia powinieneś otrzymać komunikat SUCCESS, jeśli wszystko pójdzie dobrze.
Od tego momentu Twoja nowa usługa będzie działać przy każdym uruchomieniu systemu Windows. Jeśli otworzysz interfejs usług systemu Windows (po prostu kliknij przycisk Start i wpisz „Usługi”), możesz znaleźć i skonfigurować nową usługę, tak jak każdą inną.
I to wszystko. Jeśli masz aplikacje, które zaczynają się od systemu Windows i wolisz, aby uruchamiały się bez logowania użytkownika, wystarczy zmienić dowolną aplikację w usługę. Dopiero co poruszyliśmy podstawową metodę tworzenia i uruchamiania nowej usługi, ale dzięki SrvStart możesz zrobić o wiele więcej, aby dostosować sposób działania usługi. Zapoznaj się z dokumentacją, jeśli chcesz dowiedzieć się więcej.