在VB.NET控制台应用程序关闭功能(Closing function in a VB.NET co

2019-07-28 21:43发布

我怎么能火了一个功能,当使用时,检测控制台收盘Environment.Exit(0)

Answer 1:

这样做的最简单的方法可能是处理AppDomain.ProcessExit事件 ,当应用程序的父进程退出其升高。

例如:

Module MyApp

    Sub Main()
        ' Attach the event handler method
        AddHandler AppDomain.CurrentDomain.ProcessExit, AddressOf MyApp_ProcessExit

        ' Do something
        ' ...

        Environment.Exit(0)
    End Sub

    Private Sub MyApp_ProcessExit(sender As Object, e As EventArgs)
        Console.WriteLine("App Is Exiting...")
    End Sub

End Module

但调用Environment.Exit可能不是你原来的问题的最佳解决方案。 在一般情况下, 唯一的一次,有必要使用此方法时有可能运行的其他前台线程 。 而在这种情况下,这是值得研究的正常终止的其他线程而不诉诸杀死的全过程严厉的措施办法。

Environment.Exit ,尽管有些令人愉快的冠冕堂皇的名字,是一个非常残酷的措施。 这是不是很单击Windows任务管理器“结束任务”(请注意,如果你这样 ,因为不好ProcessExit事件将不会被提高,这意味着,上述建议将无法正常工作),但它可能不是解决你真正想要的,无论是。



文章来源: Closing function in a VB.NET console application