I have a Hudson build script which calls the SysInternals PsExec utility. Normally, when PsExec is run for the first time by a given user it pops up a dialog box asking the user to accept the licence. The build agent runs as a service and I can see that the build gets stuck at PsExec. Process Explorer shows that PsExec is running, so I strongly suspect it's displaying that same prompt, but because it's running non-interactively there is no way to accept the prompt. Is there any way to 开发者_Go百科get around this silly limitation? Running on Windows Server 2008 R2 x64.
Use the /accepteula
command-line switch to accept the licence agreement.
Or set
HKCU\Software\Sysinternals\PsExec\EulaAccepted
to 1
Caution: if the reg key above is set to 0 (EULA was declined once) then the /accepteula will not work, you have to set the key to 1 manually (or delete it altogether).
It's documented, but you have to use the 2003 version or higher.
精彩评论