杀死正在运行的程序的方法以及如何捕获它们?

5Yr*_*DBA 5 .net c# windows

我们有不同的方法来终止正在运行的 C# 程序。

  1. ctrl + C;
  2. 任务栏然后右键单击它的图标,然后在弹出窗口中选择“关闭”;
  3. 任务管理器,选择其可执行文件名称,然后单击结束进程;
  4. 控制台窗口,使用kill命令;

也许更多。

我在这里问的是如何在我的 C# 程序中处理它们以保证我的 C# 程序在可能的情况下正常退出。我知道如何捕获 ctrl + C,但其他人不知道。你能帮助我吗?谢谢,

Pie*_*kel 4

退出时运行代码的最佳保证是finally 语句。

但请注意,当您使用此机制时,您的程序必须在try块中运行。

我相信,唯一不执行内部块的时间finally是:

  • A StackOverflowException;

  • 损坏的状态异常(来自 .NET 4);

  • 通过任务管理器强制终止(非托管进程终止);

  • 整个系统崩溃(例如拔掉电源线)。

请参阅使用 .NET Framework 的可靠性功能保持代码运行以进行深入分析。