简体   繁体   中英

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 ++调试智能标记

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?

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.

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.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM