Вопрос по console-application, vb.net, .net – Функция закрытия в консольном приложении VB.NET

2

Как я могу отключить функцию, когда она обнаруживает закрытие консоли при использованииEnvironment.Exit(0)?

Ваш Ответ

1   ответ
6

AppDomain.ProcessExit event, который возникает при выходе из родительского процесса приложения.

Например:

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 (и обратите внимание, что если вы делаетеthat,ProcessExit событие не будет инициировано, что означает, что приведенное выше предложение не будет работать), но, вероятно, это также не то решение, которое вам действительно нужно.

Похожие вопросы