有人看过这个/知道如何在调试器本地/自动窗口中获取值吗?
该项目是 c++ 解决方案中的 c++ 项目。动态库是 build wity/clr。 由于 dll 的性质,我只能通过附加到加载它的第三方 native 进程来对其进行调试。
一个有趣的事情是,在我附加时在这些类型的 dll 中包含 clr 之前,在输出窗口中我会得到一个加载到进程中的所有 dll 的列表,这些将是 c++ 运行时 sdk dll,第三方 native proc dll 和我的 dll。现在我在那个窗口+我的只有 clr 相关的 dll。所有运行时 native dll 不再在该窗口中列出。就像调试器没有加载它们以供引用一样。
最佳答案
找到解决方案。当以问题中描述的方式创建混合模式程序集时,在 vs2010 中使用什么调试器并不重要。 ide 将自动选择正确的。此外,如果您附加,您可以在附加到进程对话框的“附加到:”部分的组合框列表中同时使用 .net+native 可选。
您绝对必须确保与以下 3 个选项进行链接:/MAP/MAPINFO:EXPORTS/ASSEMBLYDEBUG 位于项目属性的链接器/调试部分中。
关于visual-studio-2010 - 在 c++/cli 程序集 vs2010 调试器中调试显示所有 native 字段都是 <undefined value>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7033520/