繁体   English   中英

如何从其他机器启动Windows服务?

[英]How to start a windows service from other machines?

我的计算机上正在运行一些使用C#语言编写的Windows服务。 我还为客户启动和停止这些服务创建了WPF应用程序。 当我在同一台计算机上运行它时,它可以正常工作,但是当我尝试在其他计算机上运行时,它却不起作用,并且出现了以下消息异常: 无法在计算机“ NAME-PC”上打开服务控制管理器。 此操作可能需要其他特权。

我的Windows服务具有一个项目安装程序,该项目安装程序的ProcessInstaller的Account属性设置为LocalSystem 我不确定是否会产生影响。

我如何设置其他计算机可以在特定计算机上启动此服务的权限?

谢谢。

为了帮助您进行一些故障排除,因为我认为无法直接根据您的当前信息给出答案,因此,首先,尝试将计算机名称更改为IP地址。 例如,如果您的WCF服务正在接收命令并试图重新启动该计算机上的另一服务,请尝试:

string machine = "127.0.0.1";

我不知道为什么这行得通的答案。 这可能与以本地用户身份运行的服务有关,并且无法访问DNS来解析主机名。

如果这行不通(或者甚至行不通),我将尝试使用专用于运行服务的帐户来设置您的服务,并已被授予执行您希望它们执行操作的权限。 通常,这是创建可以执行任何操作的服务的最佳实践方法,因为我们并不是所有人都可以安全工作,并且我们的服务可能会受到损害(当作为本地系统运行时,这可能会很可怕)。

另外,如果您的服务试图在远程计算机(不是本地计算机)上启动服务,那么您将需要具有某种权限的网络帐户。

我认为这是安全的事情。
您需要授予权限才能启动该服务

如何授予用户在Windows Server 2003中管理服务的权限

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM