c++ - native C/托管 C++ 调试

标签 c++ visual-studio clr

我有一个 native C Dll,它调用“LoadLibrary”来加载另一个打开了/clr 标志的 Dll。然后我使用“GetProcAddress”获取一个函数并在动态加载的 dll 上调用它。我想在调试器中进入动态库,但符号永远不会加载。有什么想法吗?

我应该说我使用的是 Visual Studio 2008。

更新:由于下面的一些提示,我将项目调试更改为混合。它没有用,但我想我知道为什么。我正在为现有应用程序开发插件。我正在连接的应用程序启动一个 exe,然后启动另一个。所以我必须使用“附加到进程”来启动调试器。我的猜测是以默认为“自动”的方式启动调试器。 有没有办法将 VS 的默认行为更改为使用“混合”调试?

最佳答案

这是来自 VS2008,但如果我没记错的话,VS2005 是类似的。在 native 项目的属性中,在“Configuration Properties->Debugging”下有一个“Debugger Type”,默认设置为“Auto”。您需要将其更改为“混合”,因为 VS 不够智能,无法意识到您需要托管调试

关于c++ - native C/托管 C++ 调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1202283/

相关文章:

c++ - 我陷入了C++的这种语法中。 “Check if the frequency of all the digits in a number is same”

c++ - Qt : Pass parameter to receiving dropEvent 中的拖放问题

c++ - 获取 OpenGL 纹理中特定像素的颜色?

c++ - boost:asio::async_write:已发送数据但未调用处理程序

visual-studio - 在程序包管理器控制台中刷新脚本

c# - 从非托管 c++ 调用托管 c# 函数

visual-studio - 'attach to process' 与 'Start Debugging' 相比有什么优势?

android - 如何更改 Android SDK 管理器的安装位置?

.net - 即使应用似乎没有占用最大内存量,也会发生OutOfMemoryException

c++ - 为什么我的 C++ 程序集没有签名?