应用程序的最后一个退出点
本文关键字:出点 退出 最后一个 应用程序 | 更新日期: 2023-09-27 17:50:17
我需要写一个函数,退出我的应用程序,然后关闭Windows 7。
我已经获得了退出应用程序的代码(主窗体中的this.Close())和关闭Windows(带有各种参数的shutdown.exe)。
这个问题与上述退出和关闭方式的正确性无关。
我的问题是:显然,我需要在关闭应用程序后调用shutdown.exe,那么调用的最后一个事件是什么,我应该把我的Windows关机代码放在哪里?我的猜测是在FormClosing事件结束时,但这是正确的吗?
我正在使用。net framework 4.5.
欢迎提出其他建议以实现以上目标。
提前感谢!
尝试AppDomain的ProcessExit事件:
static void OnProcessExit (object sender, EventArgs e)
{
Process.Start("shutdown", "/s /t 00");
}
啊,不,完全错了。
看到……
应用程序以application开头。运行(someform)。这使得当前线程(启动应用程序的线程)注册为表单的消息循环,并处理它的事件。
当这个结束时(所有的表单都是关闭的),这个语句从下一行继续,
所以你可以在主方法的末尾,在Application之后做你的工作。Run()。不需要事件
您的应用程序有一个像这样的核心入口方法:
public static void Main(string[] args) {
// Starts the application.
Application.Run(new Form1());
}
您可以在应用程序之前和之后添加逻辑。调用运行。
另一种方法是直接启动关闭- Windows将向您的程序发送关闭通知,默认情况下会导致程序退出。
看这里使用过程。Start("shutdown",/t/s/0");
http://www.codeproject.com/Tips/480049/Shut-Down-Restart-Log-off-or-Lock-your-computer-in