Comment détecter un Kill Process événement
En C# i à l'aide de processus.Kill() tuer un processus,
dans le même temps à tué demande comment détecter cet événement?
BTW: Demande.ApplicationExit événement n'a pas été viré!
- Peut-être que ce n'est pas dans l'esprit de votre question, mais il est important de noter qu'il y aura toujours un mécanisme permettant à l'utilisateur de force tuer votre processus sans laisser votre processus de "gérer" ou "détecter" l'événement. Qu'essayez-vous de faire dans votre "" détection de code?
- si la fermeture de fenêtre ou de la fermeture de l'application, je vais enregistrer certaines données,et c'est nécessaire pour mon application.
- Mon point est ceci... vous pouvez pas compter sur la chance pour enregistrer les données, en particulier en cas d'imprévu de la résiliation de votre processus. Vous pouvez certainement essayer de faire autant que possible, mais vous devez être conscient qu'il y aura toujours un événement qui pourrait causer votre application pour quitter sans vous donner la possibilité d'enregistrer les données. (Par exemple, le système du cordon d'alimentation pourrait être débranché.) Je ne veux pas être pointilleux, je voulais juste le signaler pour les autres avec une question similaire.
Vous devez vous connecter pour publier un commentaire.
si c'est un winform, vous pouvez capturer l'événement
FormClosing
et vérifier laCloseReason
:Il n'y a pas de moyens simples d'y parvenir, bien que le code de l'injection, l'api hooking, et un certain nombre d'autres techniques peuvent être utilisées pour atteindre ce but même, mais ma question est, avez-vous vraiment envie de passer par beaucoup de travail supplémentaire juste pour s'assurer que votre application est au courant d'une interruption inattendue? Vous devrez vous assurer que vous avez le code injecté/accro (ou quelle que soit la méthode de votre choix) toute seule méthode possible à quelqu'un d'autre pourrait utiliser pour mettre fin à votre demande, quand quelqu'un fait un de ces appels, votre demande peut déclencher son propre événement indiquant qu'il doit traiter d'un tel événement et de se préparer à la sortie. Essentiellement, vous pourriez également utiliser cette fonction pour empêcher quiconque d'être en mesure de fermer votre application.
Si vous souhaitez plus d'informations sur l'une de ces techniques laissez-moi savoir et je vais poster quelques liens. Bonne chance!