PsExec在非交互式运行时卡在许可证提示上。

52

我有一个使用Hudson构建的脚本,其中调用了SysInternals PsExec实用程序。通常情况下,当给定用户首次运行PsExec时,它会弹出一个对话框要求用户接受许可证。构建代理作为服务运行,我可以看到构建在PsExec处卡住了。进程资源管理器显示PsExec正在运行,因此我强烈怀疑它正在显示相同的提示,但由于它正在非交互式运行,没有办法接受提示。是否有任何方法绕过这个愚蠢的限制?运行在Windows Server 2008 R2 x64上。

3个回答

86

使用/accepteula命令行开关来接受许可协议。

或者设置

HKCU\Software\Sysinternals\PsExec\EulaAccepted 

注意:如果上面的注册表键被设置为0(EULA曾经被拒绝过),那么/accepteula将无法生效,您必须手动将该键设置为1(或者完全删除它)。


4
好的,谢谢!/accepteula就是解决方法。不知道为什么没有被记录在文档中? - EMP
1
谢谢!我需要在部署后让我们的构建服务器重新启动应用程序池 - 我想使用psexec远程执行appcmd,但是它一直停在许可证屏幕上。这太完美了! - Rob
2
它有记录——当GUI首次显示时,就在顶部——我想Mark希望您至少看一次最终用户许可协议。 - NapkinBob
1
直到微软收购SysInternals,他们才添加了这个“功能”。 - GuitarPicker
1
很遗憾,在从Azure的Kudu命令行运行Sysinternals程序时,“-accepteula”或“/accepteula”命令行选项不起作用。 - Dai

2

0

这是有文档记录的,但你必须使用2003版本或更高版本。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接