J'essaye de supprimer un service Windows avec sc delete <service name>
, et je rencontre l'erreur suivante :
[SC] DeleteService FAILED 1072 :
Le service spécifié a été marqué pour être supprimé.
Ce que j'ai déjà fait :
J'ai arrêté le service, évidemment. La commande sc queryex "<service name>"
donne le résultat suivant :
SERVICE_NAME : Stub service
TYPE : 10 WIN32_OWN_PROCESS
ÉTAT : 1 ARRÊTÉ
WIN32_EXIT_CODE : 1067 (0x42b)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
PID : 0
FLAGS :
S'assurer que Microsoft Management Console est fermée (taskkill /F /IM mmc.exe
),
En raison de cette suppression, services.msc
montre toujours le service (avec un nom, mais pas de statut ou de type de démarrage), mais la description est "<Failed to Read Description. Code d'erreur : 2 > ;". Lorsque vous essayez d'afficher les propriétés, le message "The system cannot find the file specified." s'affiche cinq fois.
Le problème persiste.
Quelle est la prochaine étape ?
Il peut y avoir plusieurs causes qui conduisent à ce que le service soit bloqué dans "marqué pour suppression".
[SysInternals' ; Process Explorer est ouvert] (http://blog.cyotec.com/2011/05/specified-service-has-been-marked-for.html). Sa fermeture devrait entraîner la suppression automatique du service.
[Le gestionnaire des tâches est ouvert] (https://stackoverflow.com/questions/20561990/how-to-solve-the-specified-service-has-been-marked-for-deletion-error/21310096#comment32672750_20565337).
[La console de gestion Microsoft (MMC) est ouverte] (https://stackoverflow.com/a/8529760/240613). Pour vous assurer que toutes les instances sont fermées, exécutez taskkill /F /IM mmc.exe
.
[La console des services est ouverte] (https://stackoverflow.com/a/21310096/240613). C'est la même chose que le point précédent, puisque la console de services est hébergée par MMC.
La clé HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\{nom du service} existe.
Une autre personne est connectée au serveur et a ouvert l'une des applications mentionnées précédemment.
Une instance de Visual Studio utilisée pour déboguer le service est ouverte.