如何从Windows服务管理WPF应用程序的生存期

如何从Windows服务管理WPF应用程序的生存期,wpf,windows-services,Wpf,Windows Services,我正在编写软件idea的原型,此时我需要的是确保WPF应用程序在崩溃后重新启动(以防崩溃) 我想有一个Windows服务,它将检查所有正在运行的进程,如果找不到WPF应用程序(意味着它已经崩溃),它将启动它。Windows服务还将承载WPF将使用的WCF服务 那么,是否有可能找出机器上当前正在运行的进程,并从Windows服务启动WPF应用程序 有一个很好的理由让前端始终处于活动状态。定义“崩溃”。是应用程序本身吗?可能是未处理的异常?还是外部事件?来自process manager的终止?可以

我正在编写软件idea的原型,此时我需要的是确保WPF应用程序在崩溃后重新启动(以防崩溃)

我想有一个Windows服务,它将检查所有正在运行的进程,如果找不到WPF应用程序(意味着它已经崩溃),它将启动它。Windows服务还将承载WPF将使用的WCF服务

那么,是否有可能找出机器上当前正在运行的进程,并从Windows服务启动WPF应用程序


有一个很好的理由让前端始终处于活动状态。

定义“崩溃”。是应用程序本身吗?可能是未处理的异常?还是外部事件?来自process manager的终止?可以是任何形式,操作系统信号、内部异常或任何其他形式。我的想法是,这个应用程序将始终执行(在某种程度上类似于一些防病毒应用程序)。让我困惑的是,你需要一些东西,应该一直运行,但却有UI。通常情况下,这些场景都是由运行逻辑和独立应用程序的Windows服务作为该服务的前端来处理的。是的,部分情况是这样的。我有服务和前端,它们必须一直运行。我不会详细介绍,但这只是一个概念,不是生产代码。如果一个软件是Windows操作系统的一部分,而不是独立的应用程序,我必须展示它是如何工作的。简而言之,我有一个很好的理由让我的应用程序(前端)在用户登录时一直运行。