C # catch kill commande

Comment puis-je attraper la commande windows taskkill afin de l’empêcher?

Vous ne pouvez pas empêcher votre processus d’être tué. La seule façon de maintenir un programme en vie est d’avoir une seconde application Watchdog qui met constamment ce processus en commun pour s’assurer qu’il fonctionne.

Donc, vous avez deux applications; AppA (principal) et AppB (chien de garde).

AppA vérifie si AppB est en cours d’exécution. Si non, AppA lance AppB .

AppB vérifie si AppA est en cours d’exécution. Sinon, AppB lance AppA .

Mais ceci est généralement une conception pour un processus malveillant , alors j’espère que vous ne faites rien de mal.

Vous pouvez voir les événements suivants dans la queue des messages lorsque l’utilisateur clique sur Terminer le processus :

WM_CLOSE // application d’interface utilisateur

CTRL_CLOSE_EVENT // Application de la console

Mais si votre application ne se ferme pas dans les délais, la commande kill sera envoyée et ne pourra pas être capturée.

Je suis sûr que ce n’est pas possible, sinon une seule application pourrait empêcher Windows de s’éteindre. Même lorsque le processus est suspendu, le tuer dans le gestionnaire de tâches fonctionne finalement. Si cela était possible, des logiciels malveillants, etc. auraient sans doute besoin de l’utiliser – non seulement ils pourraient prendre le contrôle de différentes parties de votre PC, mais ils s’assureraient également de ne jamais pouvoir les récupérer.