Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在多窗体Windows窗体应用程序退出之前,我将要运行的代码放在哪里?(无论程序如何退出)_C#_Exit - Fatal编程技术网

C# 在多窗体Windows窗体应用程序退出之前,我将要运行的代码放在哪里?(无论程序如何退出)

C# 在多窗体Windows窗体应用程序退出之前,我将要运行的代码放在哪里?(无论程序如何退出),c#,exit,C#,Exit,我有一个由多个表单组成的C#应用程序,没有一个特定的表单总是最后关闭 我应该在哪里放置一段代码(例如,将一些信息转储到文件中),以确保无论程序如何退出,都会在程序关闭之前发生这种情况?一个选项是在主方法退出之前调用一个方法来做任何你想做的事情 预计到达时间: 默认情况下,主方法位于program.cs文件中 这里有一个例子来说明我的意思 static void Main() { Application.EnableVisualStyles(); A

我有一个由多个表单组成的C#应用程序,没有一个特定的表单总是最后关闭


我应该在哪里放置一段代码(例如,将一些信息转储到文件中),以确保无论程序如何退出,都会在程序关闭之前发生这种情况?

一个选项是在主方法退出之前调用一个方法来做任何你想做的事情

预计到达时间:

默认情况下,主方法位于program.cs文件中

这里有一个例子来说明我的意思

    static void Main()
    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
        Application.Run(new Form1());

        //** this code will not be reached until form1 closes.
        bool blah = true;
        doWhatEver(blah);
    }

应用程序域进程是否退出?您能够解释的唯一情况是程序的任何“自然”关闭。在任务管理器中关闭程序,或计算机出现电源故障(按下电源按钮或断电),这是两种您无法解决的情况。任务管理器可能是一个真正的问题,特别是如果你的“关闭代码”需要很长时间。请参阅WinForms,我想我可以不使用它来处理任务管理器中的进程终止之类的事情,但我肯定希望程序的每一次自然关闭都使用它。这段代码放在什么地方?winforms应用程序的主要方法在哪里?现在我看到了:)谢谢