我正在编写一个应用程序来帮助我将我的应用程序自动部署到我的 Windows Server 2008 机器上。作为这个过程的一部分,我需要从我的测试机器上远程启动和停止我的 2008 服务器上的 IIS 网站。
在我的 2008 机器范围内,我正在使用:
C:\Windows\System32\inetsrv\appcmd.exe stop site "MyWebsite"
如果我只是从命令提示符运行它,这个命令不起作用。返回的错误是:
错误(消息:W3SVC 服务不可用 - 请先尝试启动该服务。)
但是,如果我通过“以管理员身份运行”使用命令提示符,这确实有效。这很好,花花公子,但我需要能够从另一台机器上运行它。使用域帐户(被认为是管理员),从我的测试(非 2008)机器的角度来看,我的 PsExec commaned 变为以下内容:
"C:\Program Files\PSTools\psexec.exe" \\my2008machine -u domainuser -p password C:\Windows\System32\inetsrv\appcmd.exe stop site "MyWebsite"
PsExec 启动、运行和退出,提供与上面看到的相同的错误:就像我在 2008 机器上从命令提示符运行此命令一样 - 没有 - “以管理员身份运行”。
Windows 防火墙已关闭,我已按照其他地方的建议设置了“LocalAccountTokenFilterPolicy”,但我没有想法。知道如何解决这个问题或解决它吗?