0

有没有办法做到这一点,但不是使用目前在我的环境中不起作用的 WMI,而是使用 ServiceController 类。

using (ManagementObject service = new ManagementObject(new ManagementPath(objPath)))
                {
                    object[] wmiParams = new object[11];
                    wmiParams[6] = _username;
                    wmiParams[7] = _password;
                    service.InvokeMethod("Change", wmiParams);
                    Thread.Sleep(2000);
                    //check if new credentials in order
                    //Console.WriteLine("Service credentials changed");
                }

谢谢!

4

1 回答 1

0

该类ServiceController不允许您更改服务凭据。如果 WMI 不是一个选项,您可以ChangeServiceConfig改为 P/Invoke。您可以在此处找到 C# 示例:

更改 Windows 服务的登录凭据

于 2014-06-30T07:29:41.587 回答