Most of the services (if not all) can be controlled via value Start
under registry key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<service name>
Please note that CurrentControlSet
in aforementioned registry key is link to either ControlSet001
or ControlSet002
as described here.
Now the value "Start" can have values from 0 to 4 (sc config for reference):
- 0 - boot - Specifies a device driver that is loaded by the boot loader.
- 1 - system - Specifies a device driver that is started during kernel initialization.
- 2 - auto - Specifies a service that automatically starts each time the computer is restarted and runs even if no one logs on to the computer.
- 3 - demand (manual) - Specifies a service that must be started manually. This is the default value if start= is not specified.
- 4 - disabled - Specifies a service that cannot be started. To start a disabled service, change the start type to some other value.
While going to that mad service disabling spree, first check service start value and mark it down, prepare yourself with alternative booting media (any Windows installation media will do) in case system becomes unbootable due to necessary service disabled.
If shit happens, boot from external media, switch to console (shift+F10 IIRC) > regedit > point to HKEY_LOCAL_MACHINE and "load hive" > <systemdrive>:\Windows\System32\config\SYSTEM
. Now locate under loaded hive ControlSet001\Services
and you can undo previous mistakes with setting Start
values to defaults.
Here is a little batch script to list all services "default" (default until modified by user, which then becomes "default") values under 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
Paste the above code to defaultservices.bat
and run it as defaultservices.bat > defaultservices.txt
to generate text file, which can be utilized later to see service default values.
6
What you want is call Kiosk Mode. You should also look at Black Viper’s Windows 7 Service Pack 1 Service Configurations to see what services are safe to disable.
– DavidPostill – 2017-06-23T21:38:02.3272Try Linux, Windows is heavy. – ferit – 2017-06-24T08:17:27.510
@Saibot For a Windows program Wine will have to be used, and because of... efficient development techniques it's really hard to ensure compatibility - the Wine developers have done an excellent job but it is a job that is by no means finished. – wizzwizz4 – 2017-06-24T12:58:40.050
@wizzwizz4 assuming portability, of course. – ferit – 2017-06-24T13:52:20.057
@wizzwizz4 if the microscope/interface isn't totally proprietary, there would most probably be Linux software for the task with no need for wine. – Joe – 2017-06-27T03:12:41.463
@Joe You're assuming that it's widespread hardware - very little has been published for more obscure systems. – wizzwizz4 – 2017-06-27T16:16:24.377