我正在使用 Visual Studio 2010 调试主要用 C 编写的应用程序。通常,我可以很好地附加调试器,但是当我链接到用 C++/CLI 编写的库时遇到了一些问题。
如果我用标志编译库/clr
(我最终将不得不为此做尚未编写的库),那么我将失去调试整个 C 应用程序的所有能力,即使是与库调用无关的部分。我得到了一个带有黄色三角形和感叹号的空圆圈,应该是一个红色的断点圆圈。将鼠标悬停在它上面只会给我一个工具提示,上面写着“断点当前不会被命中。没有可执行代码与此行相关联。可能的原因包括:条件编译或编译器优化。”
然后,如果我链接到没有标志编译的完全相同的库/clr
,我就可以再次调试我的应用程序。
我知道 Visual Studio 不太可能调试用 C++/CLI 编写的库,这没关系。我只想保留调试应用程序其余部分的能力,至少可以看到我调用外部库的结果。
另一个复杂的因素是这个项目不是由 Visual Studio 构建的。它是使用一个使用cl
.
有谁知道为什么我目前不能按照我想要的方式调试库?关于我怎么做的任何建议?