I am hitting a problem with debugging a program running in a VM, I am using Visual Studio 2008, VMWare Workstation 6.5.3 build-185404, Vista Ultimate 64 bit, and VMDebugger 1.5.
I have a VS solution that has multiple target executables (all written in C#). When I select VMware->Options, i get a dialog box that says "Unable to detect the current startup project".
A different VS C# Solution with only 1 target exectuable, seems to work fine.
I have seen this problem posted before, but I haven't see a solution posted. Is there one?
Thanks,
I don't believe so. In all of these cases it has been very difficult to find a reproducible case. Can you give us very specific information about your solution layout and projects? The more specific info you give us, the better chance we have of fixing it. Thanks for the help.
What more information do you want?
It has multiple C# projects, most of which are dlls and 1 executable. There is also a setup project. Name wise, the start up project is somewhere in the middle.
Mostly, I'm looking for folder structure like what you see in the Solution Explorer and whether there are any nested projects or solutions. If not, a quick map would be nice, like:
30 C# dll projects in a row
1 C# exe project
15 C# dll projects in a row
Does that make sense? Thanks for the help.
That is pretty much the form of one of my projects.
Another project just had 3 C# executables and 2 setup projects.
My startup project was the one in the middle.
*******************************************************************
Buddy Lott
Firmware Design Engineer
19476 Industrial Dr.
New Paris, IN 46553
574.831.5250 x 8197
blott@kmccontrols.com
Pretty sure vmdebugger does not support .net, only native debugging
I suppose that could be true, but I find it hard to believe.
My understanding from the documentation, is that the integration is quicker/easier way to connect to the debug monitor running in the VM.
If that is so, then I would think the integration would be language independent.
In either case, the "cannot find startup project" is not very helpful. It only seems to work if/when there is only one possible startup project.
Another thought that just popped into my head, I wonder if the issue related to compiling in a 64 bit environment and trying to debug in a 32 bit.
*******************************************************************
Buddy Lott
Firmware Design Engineer
19476 Industrial Dr.
New Paris, IN 46553
574.831.5250 x 8197
blott@kmccontrols.com
Just checked. You're right. Remote debugging supports everything, Replay supports only native.
Startup project error seems to indicate that our startup project detection code is not meshing well with your solution. Any chance I can get a copy of the solution? (i need the source files, but not their contents, so you can send empty ones with the right names)
My email: dmitryg@vmware.com
No, I'm pretty sure that the Live (aka remote) Debugging section works with C#. It's just replay debugging that doesn't work with C#. I don't 100% remember, but the blog post I wrote a while ago when I did remember ( http://blogs.vmware.com/workstation/2008/04/using-the-vmwar.html ) seems to indicate C# is supported.
That said, it definitely could be an issue that you have multiple startup projects. Earlier you had said you had multiple target executables, but I didn't know that multiple were set as the startup projects. I'm pretty sure that we only support 1 startup project, but I'm not sure what the behavior is when you have more than 1 (e.g. failure, or just using the first one in the list). Try just going to 1 startup project and see if that means that you can debug. But I agree that the error message should be better.
I didn't say I have multiple startup projects.
I said in one case I had multiple exe products that COULD be startup project.
For instance, I a solution that has multiple sub projects that each produce a executable. At the time (if I remember correctly), I had the project in the middle selected as the startup project.
*******************************************************************
Buddy Lott
Firmware Design Engineer
19476 Industrial Dr.
New Paris, IN 46553
574.831.5250 x 8197
blott@kmccontrols.com
Ok, sorry, just to clarify, you had said "It only seems to work if/when there is only one possible startup project." What did you mean by this? Either a project is or isn't a startup project, so can you clarify what you meant by "possible" startup projects?
I have this problem reproduced right now.
In this solution I have 4 C# executables, 1 library, and 4 setup and deployment projects.
All four c# executables have just one 1 form running a simple gui.
The solution layout:
C# exe1
C# exe2 <- this is selected as the startup project (select the project, right click and then click "set as startup project").
C# exe3
C# library
C# exe4
Setup1
Setup2
Setup3
Setup4
When I click any of the buttons in the VM Tool bar, I get the "Cannot find startup project" messages.
I also just discovered another clear, C# exe 4 happens to have been the FIRST product exe project I created in this solution. When I select it as the startup project, I don't get the error message. For other 3 exes, I get the "Cannot find startup project" message
*******************************************************************
Buddy Lott
Firmware Design Engineer
19476 Industrial Dr.
New Paris, IN 46553
574.831.5250 x 8197
blott@kmccontrols.com
Ok, great, thanks. I have sent this thread to the engineer who works on the VMDebugger now and he will take a look.
Hi,
I've been following this thread with great interest, and I seem to have found a possible answer.
I too, have this problem, and I have narrowed it down to the fact, that the solution contains setup-projects.
When removing the setup project(s), the WMDebugger runs as expected.
If the setup projects are included in the solution, the beformentioned error occors.
Hope this helps.
Regards,
Martin Moesby
Toolpack Solutions
Has this issue been solved yet?
I have not seen any more comments on it.
Thanks.
I just tried it and still seem to have the problem.
I found that the problem goes away if you drag the active project out of a solution folder and put it at the top level. Just click the project, and drop it on the top line in the Soution window -- the line that says "Solution 'xxx' (nn projects".
That got me past the first hurdle, the "Cannot detect startup project".