Większość usług (jeśli nie wszystkie) można kontrolować za pomocą wartości Startw kluczu rejestru. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<service name>
Należy pamiętać, że CurrentControlSetwe wspomnianym kluczu rejestru znajduje się link do jednego z nich ControlSet001lub w ControlSet002sposób opisany tutaj .
Teraz wartość „Start” może mieć wartości od 0 do 4 ( konfiguracja sc w celach informacyjnych ):
- 0 - boot - Określa sterownik urządzenia ładowanego przez moduł ładujący.
- 1 - system - Określa sterownik urządzenia uruchamiany podczas inicjalizacji jądra.
- 2 - auto - określa usługę, która automatycznie uruchamia się przy każdym ponownym uruchomieniu komputera i działa, nawet jeśli nikt się nie zaloguje.
- 3 - żądanie (ręczne) - określa usługę, którą należy uruchomić ręcznie. Jest to wartość domyślna, jeśli nie określono parametru start =.
- 4 - wyłączony - określa usługę, której nie można uruchomić. Aby uruchomić wyłączoną usługę, zmień typ uruchomienia na inną wartość.
Idąc do tej szalonej usługi wyłączającej szaleństwo, najpierw sprawdź wartość początkową usługi i zaznacz ją, przygotuj się na alternatywny nośnik rozruchowy (zrobi to dowolny nośnik instalacyjny systemu Windows) na wypadek, gdyby system przestał się uruchamiać z powodu konieczności wyłączenia usługi.
Jeśli tak się stanie, uruchom komputer z zewnętrznego nośnika, przełącz na konsolę (shift + F10 IIRC)> regedit> wskaż HKEY_LOCAL_MACHINE i „załaduj gałąź”> <systemdrive>:\Windows\System32\config\SYSTEM. Teraz zlokalizuj pod załadowanym gałęzią ControlSet001\Servicesi możesz cofnąć poprzednie błędy, ustawiając Startwartości domyślne.
Oto mały skrypt wsadowy, aby wyświetlić listę wszystkich „domyślnych” usług (domyślnie do czasu modyfikacji przez użytkownika, które następnie stają się „domyślnymi”) poniżej HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services:
@echo off
setlocal enabledelayedexpansion
set KEY=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
for /f "tokens=5 delims=\" %%a in ('reg query !KEY! /s /v "start"') do (
set SERVICE=%%a
for /f "tokens=3" %%b in ('reg query !KEY!\!SERVICE! /v "start" ^| findstr /i "start"') do (
echo !KEY!\!SERVICE! - "Start" %%d
)
)
endlocal
Wklej powyższy kod defaultservices.bati uruchom go, defaultservices.bat > defaultservices.txtaby wygenerować plik tekstowy, który można wykorzystać później, aby zobaczyć domyślne wartości usługi.