-
Commandes de gestion des services sous Windows.
La commande net avec l'argument start permet de lister les services en cours d’exécution:
> net start
La commande sc est beaucoup plus complète, il est possible notamment de lister les services même inactifs:
> sc query type= service state= all > sc query type= service state= inactive
Via PowerShell les commandes avec le substantif “Service” permettent de gérer les services:
# Lister les services en cours d'execution triés par nom Get-Service | Where-Object {$_.Status -eq "Running"} | Sort-Object Name
> sc qc mon_service
Pour arrêter un service en cours d’exécution ou pourra utiliser indifféremment net ou sc:
> net stop "mon service" > sc stop "mon service"
Sous Power Shell, les commandes get-service, start-service, stop-service, restart-service sont disponibles:
Pour lister les services et leur statut:
PS> get-service
nom | Description |
---|---|
appmgmt | service ajout/suppression de programmes. |
mpssvc | Pare-feu Windows |
La commande sc propose l' argument binPath pour spécifier le binaire et les arguments transmis au service lors du démarrage :
sc config <service name> binPath= <binary path>
Dans la base de registre la valeur correspond est ImagePath, elle peut être modifiée via l'éditeur de registre:
Ordinateur\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
;La modification du registre peut également se faire via PowerShell :
Set-ItemProperty -Path "HKLM:\System\CurrentControlSet\Services\aService" -Name ImagePath -Value "C:\Program Files (x86)\aService\NewName.exe -anArg=aValue"
Modifier
Get-CimInstance win32_service -Filter "Name='My Service'" | Invoke-CimMethod -MethodName Change -Arguments @{PathName="C:\Program Files\My Service\NewName.exe"}