0

我正在编写一个 Windows 服务来每天处理电子邮件。此服务包括一个 App.Config 文件,该文件具有多个参数,以便服务相应地工作。

每次,管理员用户都必须使用文本编辑器更改/添加/删除该部分内的对。

我计划包括一个 Windows 表单来加载该部分中的所有对,并考虑通过表单进行任何修改。

我只想知道是否可以在 Windows 服务中拥有一个 winform 并在需要更改配置时打开它?我知道我们可以有一个单独的 windows 应用程序并加载 windows 服务的 App.Config 文件。我只是想避免为此使用单独的应用程序。

如果您做过与此非常相似的事情,请分享您的想法!

问候,斯里拉姆

4

1 回答 1

0

如果没有别的,这听起来像是一个安全问题。

Windows 服务在不同的上下文和帐户中运行,并且无法与桌面交互,除非在安装服务时特别允许。这当然是不够的,因此您还必须让服务在运行桌面的同一帐户下运行——这本身就是一个糟糕的设计,我不推荐这样做。

您还可以让服务可执行文件决定在启动期间要做什么,一种常见的模式是在调试时将其作为控制台应用程序生成以简化开发。但随后您必须停止服务并以交互方式手动启动服务可执行文件以获取 UI 行为。

无论如何,一个单独的配置工具是要走的路。

于 2013-07-30T13:12:52.630 回答