【问题标题】:Is it possible to verify if a Windows Service is running from a different computer?是否可以验证 Windows 服务是否在另一台计算机上运行?
【发布时间】:2011-11-10 14:35:38
【问题描述】:

我正在开发一个项目,该项目由几个 Windows 服务组成,这些服务收集数据并将它们保存到数据库中。现在我必须开发一个可以向用户显示 Windows 服务状态的管理面板(一个 Windows 应用程序)。我发现了如何使用 C# 验证 Windows 服务是否正在运行:How can I verify if a Windows Service is running

但我的问题是:我的 Windows 服务正在服务器上运行,用户将在他/她的计算机上运行管理面板。是否可以从另一台计算机检测 Windows 服务的状态。如果是,怎么做?

【问题讨论】:

    标签: c# process windows-services remote-access


    【解决方案1】:

    不是 C# 开发人员,但从逻辑上讲,我会创建一个小型后台应用程序来检查服务器上的这些服务,然后我与该应用程序对话并请求我的任何服务的状态。

    【讨论】:

      【解决方案2】:

      您可以使用 pslist 命令:它为您提供有关远程计算机上正在运行的进程的信息,但是您必须提供凭据才能访问另一台计算机...

      http://technet.microsoft.com/en-us/sysinternals/bb896682

      【讨论】:

        【解决方案3】:

        你可以用 WMI 做到这一点,this example 为我工作(显然注释掉 Stop 部分)

        【讨论】:

        • 谢谢亚历克斯。看起来不错,但有一点我不明白。 ManagementScope 范围 = 新 ManagementScope(@"\\" + ipAddress + @"\root\cimv2");在该行中,我是否必须更改 @"\root\cimv2" 部分?
        • 不,您只需将ipAddress 更改为运行您要检查的服务的机器的名称
        猜你喜欢
        • 2011-10-04
        • 2010-09-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-30
        • 1970-01-01
        • 1970-01-01
        • 2019-02-18
        相关资源
        最近更新 更多