当我在一台机器上创建一个新的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用户)然后它可以工作。任何想法为什么它首先像我一样运行它最终会使它作为另一个用户工作?