PDA

View Full Version : "Failed to create process: The stub received bad data"


DanGBCT
02-17-2011, 09:26 AM
I am trying to "get" source code from Team Foundation Server with the following command in Visual Build Pro:

"C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\tf.exe" Get /noprompt /login:<domainname\username>, <password in asterisks>, /recursive $\<files to retrieve>

and I received the message:
"Failed to create process: The stub received bad data".

Has anyone come across this problem and know of what is causing it.

Thanks.

Specifics:

Visual Build Pro 7.7
Windows 7 (32-bit)
Visual Studio 2010 Ultimate Ed
logged in as user with Admin priviledges (user is part of Adminintrator group)
user is part of a domain
user is authorized to access TFS

Let me know if there is more info needed that I missed.

kinook
02-17-2011, 09:33 AM
We haven't heard of that one before. Is this something that was working and then stopped working? Does it always fail or sometimes work? Does it only happen on one machine? Can you post the .bld file or the step that's failing? Thanks.

DanGBCT
02-18-2011, 10:06 AM
I was able to solve the problem by removing the "$" character from the command line:

"C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\tf.exe" Get /noprompt /login:<domainname\username>, <password>, /recursive $\<files to retrieve>

Can you explain the role of the "$" character?

Thanks.

kinook
02-18-2011, 10:23 AM
It seems strange for that to affect whether creating the process works, and I thought a $ was needed to specify a server path (see http://msdn.microsoft.com/en-us/library/56f7w6be%28v=VS.100%29.aspx), but if it works...

DanGBCT
02-18-2011, 10:26 AM
One other piece of data that I didn't include was that the TFS server was on a different domain than the build machine that was executing the VBP script. Since the "$" is part of the server path, as you mentioned, could it be that the build machine couldn't resolve the "$" symbol.

Thanks for your help.

kinook
02-18-2011, 10:41 AM
The "Failed to create process" error means that the CreateProcess call for tf.exe failed. How the existence of a $ in the command-line could affect this is a mystery to me, since it wouldn't have even gotten to the point of tf.exe actually parsing the command-line arguments.