如何使用.net在远程计算机上启动/停止/重新启动Windows服务

时间:2011-06-16 08:43:19

标签: c# winforms windows-services

目前我正在开发启动/停止/重启Windows服务的桌面应用程序。

    public static void StartService(string serviceName, int timeoutMilliseconds)
    {
        ServiceController service = new ServiceController(serviceName);
        try
        {
            TimeSpan timeout = TimeSpan.FromMilliseconds(timeoutMilliseconds);

            service.Start();
            service.WaitForStatus(ServiceControllerStatus.Running, timeout);
        }
        catch
        {
            // ...
        }
    }

现在我希望代码在远程系统(同一网络上的其他系统)上执行相同的操作。

感谢。

1 个答案:

答案 0 :(得分:6)

您需要使用重载的接受机器名的构造函数来实例化ServiceController,如下所示:

ServiceController service = new ServiceController(serviceName, machineName);