【问题标题】:WIndows Service in c#c#中的Windows服务
【发布时间】:2018-01-29 11:02:58
【问题描述】:

我正在处理一个项目,其中要求我需要从 XML 文件中读取 HKLM 设置并将这些设置写入 Windows 注册表。为此,我需要有关以下最佳选择的建议:

  1. 在网络层上运行的 Windows 服务
  2. 使用 TCP 协议的 WCF 服务
  3. 命名管道

由于登录系统的用户将没有足够的权限来运行该服务,因此需要在安装时为该服务提供更高的权限,以便该服务能够运行并在 HKLM 中写入设置.

带有 reg 设置的 XML 将由另一个应用程序生成。生成 XML 文件后,应用程序将调用建议的服务以将 reg 设置写入 Windows 注册表。由于最初生成 XML 文件的应用程序使用较少的特权凭据(非管理员)运行,因此它无法在注册表中写入 HKLM 设置。因此,我需要一个与应用程序分开运行的具有更高权限级别的服务。当应用程序生成 XML 文件后,它将与服务通信,并且建议的服务将读取该 XML 文件并创建 reg 设置。

不会有用户交互。

【问题讨论】:

    标签: .net windows wcf service tcp


    【解决方案1】:

    尝试获取以下要求:您何时要读取用于 HKLM 设置的 XML 文件,是否需要用户交互? 它是基于某些用户操作吗?或者它是一个预定的工作? 如果已安排好并且不需要交互,请选择 Windows 服务 否则 WCF 服务。

    只是托管机制不同而已。 请注意,WCF 服务仍然可以作为 Windows 服务托管,并且 Windows 服务还可以在端口上设置 HTTP 侦听器

    关于权限,两种托管机制都需要。实际上建议使用具有适当权限的服务帐户。

    【讨论】:

    • 更新了我的问题
    • 现在使用 IIS 中托管的 WCF 服务。将来,它仍然可以作为带有一些代码扩展的 Windows 服务托管。我还建议将托管部分与 biz\features 实现分开
    猜你喜欢
    • 1970-01-01
    • 2018-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-25
    • 1970-01-01
    相关资源
    最近更新 更多