我正在尝试使用MsDeploy runCommand提供程序在自动化部署期间卸载和重新安装Windows服务。
到目前为止,当遵循这个问题和这篇博客文章中的建议时,我有一定的成功。
要执行实际的安装/卸载操作,我正在调用远程主机上的批处理文件。当我直接登录到主机并从shell中使用“以管理员身份运行”选项时,批处理文件按预期工作。但是,当仅通过双击运行批处理文件(或使用MsDeploy runCommand提供程序运行批处理文件)时,批处理文件没有足够的权限执行安装或卸载操作。在所有情况下,我都是使用在主机上是本地管理员的用户帐户运行批处理文件。
我已经确认runCommand通过管理服务委派工具使用管理员帐户,并重新启动了管理服务,只是为了这个。
我的问题是:
1)如何使用runCommand提供程序模拟“以管理员身份运行”?
2)如果我使用PowerShell脚本而不是批处理文件,这还会是一个问题吗?
3)我是否遗漏了一些基本的东西?
我真的不想编写真正的软件来在远程主机上执行此操作!
任何建议都将不胜感激。