【问题标题】:Little help with a windows service对 Windows 服务的帮助不大
【发布时间】:2011-08-08 20:17:20
【问题描述】:

(需要c#,.net framework 2.0)

你好。

这是一个实用的技术问题...您已被警告。 :)

我有一个 Windows 服务,它要求每个用户提供在线服务的登录信息。假设我们有两个用户 a 和 b。

a 运行安装过程,最后要求提供在线服务的登录凭据。将其存储在本地并 ding,当服务启动时它知道用户。

b 出现,注销 a,自己登录。该服务注意到一个新用户,检查它是否有登录详细信息,发现没有。

我想我可以使用 Process.Start 来启动一个 Windows 应用程序。不。 所以我用谷歌搜索,看起来如果我写一堆代码(这里显示为 CreateProcessAsUser )是可能的,但不建议这样做。

那么……我该怎么办?对任何技术或实际解决方案感到高兴。

【问题讨论】:

  • 我在 Windows 7 上使用 CreateProcessAsUser,它可以做你想做的事情。
  • 我想知道是否没有某种方法可以为每个用户创建一个“首次运行”应用程序,要求他们在第一次登录时登录,然后再登录?
  • 你可以使用 Run regkey 作为那个或启动文件夹,但用户通常会清除它们。

标签: c# service createprocessasuser


【解决方案1】:

在服务中显示任何类型的用户界面不仅不鼓励,而且在某些 Windows 平台中甚至明确禁止(我想到的是 Windows Server 2008)。
此任务的常用方法是开发两个独立模块,一个 Windows 服务和一个 GUI 应用程序,根据要传输的数据的复杂性,使用许多可用的 IPC 方案之一与服务通信。例如,环回 WCF(Web 服务)可能是一个很好的方法。
如果实施得当,该解决方案也将适用于多个终端服务会话等复杂场景。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-29
    • 2010-10-14
    • 1970-01-01
    • 1970-01-01
    • 2011-05-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多