In my Team Build, I have to run an application that displays a UI. This application is configured to run without user input if we run it with the appropriate command line parameter.
When I attempt to run this locally, it runs without error, but if I run it from the Team Build, the User Interface never displays, and the process just hangs. I can only imagine that this is happening because the TFSBuildServiceHost service is running as a specific user. After doing a little bit of research, I found that services not running as the local service account could not display a User Interface.
With that in mind, I changed my Workflow to include an InvokeProcess activity invoking PsExec and having that run my application with the -i and -s parameters. The idea behind this was that by adding the -s parameter, it would be able to actually display a User Interface. Sadly this did not work. If I add the -h parameter (Runs the executable with its elevated token) I get a strange popup from Interactive Service Detection asking me if I would like to show a message that is trying to be sent.
Is there a way to always accept a message that is being sent? Does anyone know how to run an application that displays a UI from a Team Build?