Search code examples
windows-servicespsexecsysinternals

PsExec gets stuck on licence prompt when running non-interactively


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 get around this silly limitation? Running on Windows Server 2008 R2 x64.


Solution

  • 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).