MSBuild Task hides code signing certificate password dialog box

*** Using FB 6 ***

.NET 4.0

When using the MSBuild action, if the assemblies are to be signed by a certificate that requires a password, the password dialog box is coming up invisible.  I can see it if I run the same MSBuild project via the VS 2010 Command Line, but not in Final Builder.  The dialog box has focus, because FB loses focus, and I can access the dialog box's system menu, and also enter the password blind followed by .  At that point, the dialog box closes and FB regains focus.

There are other certificates that require smart card verification and associated PIN dialog box that appear fine, but I assume that's because MSBuild is shelling out to the external service that reads the card, as opposed to something more integrated with .NET.

Unfortunately, the solution involving removing the cert password requirement cannot be done, as that option is disabled on the Import dialog.

I've looked around for some sort of 'hide/show dialog box' option but can't find it.

We run all external processes as hidden, the whole point of automated builds is that the user does not need to interact with the external tools. The work around for this is to build it once from the command line using msbuild, it will prompt you, and as long as you are logged into the same account as you use for FinalBuilder it shouldn’t prompt you again on subsequent builds (from FinalBuilder).

This topic on stack overflow has some useful info (it’s about TFS but the issue is the same as it is for FinalBuilder).

http://stackoverflow.com/questions/1056997/team-foundation-server-build-with-password-protected-codesigning-fails

Thanks Vincent.

Unfortunately, I can't export the certificate in pfx format due to security settings so the link isn't useful.

I've tried building the application with MSBuild separately, it's actually how I figured out what was occuring.  Unfortunately, it askes each time the task or command line is executed, so there must be a setting that set either to a really short period of time, or it done by program execution or something.  I'll have to talk to the security and network admin people.

I'd appreciate it if you would consider adding an option to un-hide external process on a task by task basis, but I certainly understand I'm in a very small set of users, and it's not very likely that will occur.

Thanks for the reply and definitely thanks for FB.

Paul