当我在机器上创建新的 Windows 服务时,我必须先运行在我的帐户下运行的 EXE,然后才能使用其“真实”凭据实际启动该服务。
我正在使用sc
命令来创建、配置和启动服务:
sc create "Presto Self Updating Service Host" binPath= "C:\Program Files (x86)\Presto\Presto Self Updating Service Host\SelfUpdatingServiceHost.exe"
sc config "Presto Self Updating Service Host" obj= "serviceAccount" password= "pw" start= auto
sc start "Presto Self Updating Service Host"
在我进入服务属性并手动输入密码之前,该服务不会启动。这会导致服务帐户获得“作为服务登录权限”。我已经放弃尝试自动化。所以,在我完成那部分之后,我启动服务并收到一条错误消息:
事件日志中没有关于失败的任何内容。所以我要做的是自己运行EXE。这样可行。然后我关闭 EXE 并启动服务(使用 serviceAccount 用户),然后它就可以工作了。知道为什么它首先以我的身份运行它最终会导致它以其他用户的身份运行吗?