O evento Application.ApplicationExit funciona para ser notificado sobre a saída em aplicativos que não são do Winform

Nossa biblioteca de códigos precisa ser notificada quando o aplicativo estiver saindo. Portanto, assinamos o evento System.Window.Forms.Application.ApplicationExit. Isso funciona bem para aplicativos Winforms, mas também funciona para outros tipos de aplicativos, como aplicativos de console, serviços e aplicativos da Web (como ASP.NET)? O espaço para nome sugere que não, e provavelmente é gerado quandoApplication.Exit() é chamado (explícita ou implicitamente), o que pode não ser correto ao chamar para esses outros caso

Existe algum outro evento que seria melhor nesses outros casos ou que seria mais universal (ótimo se funcionar para o Winforms também)? Por exemplo, existe um evento para quandoEnvironment.Exit() é chamado (aplicativo de console)?

Eu encontrei uma menção de um evento Exited no System.Diagnostic.Process, mas isso parece ser para monitorar a saída deoutr processo e não parece ser recebido por um processo sobre si mesmo (por exemplo,Process.GetCurrentProcess().Exited += Process_Exited; Process.GetCurrentProcess().EnableRaisingEvents = true;). Eu acho que isso só pode ser gerado depois que o processo for encerrado, para que não funcion

Isto é particularmente para .NET 2.0 e C #.

questionAnswers(1)

yourAnswerToTheQuestion