我有一个在 Visual Studio 中调试的现有 C 应用程序,我想访问其中的某些库函数。当我将库从其 c++/cli 源代码编译为 .lib 时,我可以在有或没有 clr 支持(/clr
标志)的情况下对其进行编译。
如果我在有 clr 支持的情况下编译库,并将其与我的应用程序的其余部分链接,则调试器不能再停在不在使用 clr 支持编译的库中的特定代码行。
如果我在没有 clr 支持的情况下编译库并链接到该库库,调试器一切正常。我们需要在 clr 支持下编译这个库,我不想失去调试程序其余部分的能力。谁能告诉我为什么在链接 /clr 编译库而不是另一个时我失去了调试能力?是否有人知道如何正确编译/链接,以便我可以保持调试能力?
问问题
744 次
1 回答
1
由于新的可执行文件包含本机代码和托管代码的混合,因此您必须将两种类型的调试器附加到它。在 Debug -> Attach to Process... 我选择了进程以及要附加的调试器的类型。在这种情况下,托管(v 4.0)和本机。
在这里更详细地回答。
于 2012-04-20T17:25:34.807 回答