Chris S
Chris S

Reputation: 65446

Why does debugging a C# project display C++/CLI symbols?

I've got a strange problem with some C# library and console projects (but not ones I create from scratch) where they are displaying the watches and the smart tags for debugging using C++/CLI notation (for example, showing System::Object^ where I would expect System.Object):

C++ debug smart tag

I've tried changing the project guids, as I thought this was the problem (and some had changed), deleting obj/debug folders, restarting Visual Studio 2010, repairing Visual Studio 2010 and even the old favourite restarting Windows.

Is there any obvious setting I'm missing that has somehow been enabled?

Upvotes: 25

Views: 1155

Answers (2)

Dan Weaver
Dan Weaver

Reputation: 101

I ran into this issue as well, the debugger picked up c# and c++ in all c# projects. I'm running windows 7 64 bit.

I resolved this issue by going to the compatibility tab of the properties of the shortcut. It was checked as running as windows xp service pack 3. I unchecked that and still kept run as administrator checked. Suddenly my debugger picked all of it up as c# again.

Upvotes: 4

Chris S
Chris S

Reputation: 65446

As this link in the comment provides an answer from Microsoft - "Cannot reproduce" I had to uninstall Visual Studio 2010 and re-install it (in fact I re-imaged my machine).

Switching off the "HEX" option shown here did turn off hex addresses, but not the C++/CLI display.

Upvotes: 2

Related Questions