我如何让我的WPF应用程序在c#中作为服务运行?

本文关键字:服务 运行 我的 应用程序 WPF | 更新日期: 2023-09-27 17:50:26

我有一个WPF应用程序,我想让它作为服务运行,我如何在c#中做到这一点?

我如何让我的WPF应用程序在c#中作为服务运行?

编辑(基于评论)

如果你想让程序在启动时运行,最简单的方法是更改设置,在以下目录中创建一个应用程序输出(exe)的快捷方式:

win7: C:'ProgramData'Microsoft'Windows'Start Menu'Programs'Startup
XP: C:'Documents and Settings'All Users'Start Menu'Programs'Startup

原始解释

考虑到WPF应用程序是基于UI的应用程序,而windows服务不是,你将不得不从应用程序中取出所有与用户的交互,然后基本上将其作为服务重新创建。

考虑到他们被要求做两件完全不同的事情,这不是一个简单的一步过程。

服务位于后台,执行不需要用户输入的任务,并且在大多数情况下不与用户交互,除了配置文件;即使你可以运行服务与桌面交互,但它的工作方式与普通的wpf程序完全不同。

下面的Wpf程序(正如其名称的表示部分所暗示的那样)是用来与用户交互的。

为什么要把它作为服务来运行?服务的全部意义在于以最少的用户交互在后台运行。

把你的应用分成两部分;

  1. 在后台运行的Windows服务应用程序(可能在启动时自动运行。

  2. 用户交互应用程序,与。和控制

考虑WCF在两者之间进行通信。

如果你想更好地理解这一点,请阅读SOA(面向服务的体系结构)。