我正在尝试使用 C# 程序集和 C++/Cli 程序集调试项目。
C# 中定义的接口由 C++/Cli 类继承,该类又调用本机 C++ 类。在 C++ 和 C# 程序集以及启动 .exe 中都启用了混合模式调试。
现在,当我尝试调试 C++ 部分时,它变得很棘手;如果我只是在 C++ 部分设置断点,它们不会被命中(尽管我知道它们被命中是因为写入了日志(等)并且在那里抛出异常实际上会正确抛出它)。
当我在调用混合模式程序集之前在 C# 中的最新调用处设置断点时,我可以进入 C++/Cli 代码,甚至进入本机部分。但是,调用堆栈显示为
MyMixedMode.dll!<Unknown function> Line ...
而且我无法检查任何本地人(本地代码中的本地人视图只是空的)。
有什么想法我可能做错了吗?