gpt4 book ai didi

c# - 从 C# 解决方案调试 C++ 解决方案

转载 作者:行者123 更新时间:2023-11-30 01:39:40 25 4
gpt4 key购买 nike

我有两个 VS 解决方案。解决方案 A_sol 是 C++/C# 项目。解决方案 B_sol 具有项目 B_proj,它是 中的 B_proj 项目生成的围绕 C++ *.dll 的 C# 包装器A_sol。如何从 B_proj 调试 A_proj
更新:B_sol 中的项目之一是可执行文件。

最佳答案

如何从 B_proj 调试 A_proj?

如果我没理解错的话,A_proj 是一个 C++ 项目。下面我将基于这个假设给出我的建议。

请注意,从哪个项目/解决方案开始调试并不重要,只要您有调试信息(换句话说,对于 C++ 项目 - 如果 Visual Studio 能够获取 PDB)。

因此,您可以从解决方案运行可执行文件,或者按照@hoodaticus in his answer 的建议, 附加到已经运行的进程。无论您的项目是否可执行,您都可以附加到它:

  1. DLL 已加载到该进程中
  2. 您拥有与 DLL 匹配的 PDB 文件(在构建期间生成)

所以我会重复同样的建议

In the other project, do Debug > Attach to Process > pick your process from the list.

但我要补充一点,您必须注意为包含您的 C++ dll 的进程选择“调试这些代码类型 -> native ”。这部分经常被遗漏和混淆,需要一些时间来发现(个人而言,我经常进入)enter image description here

希望对您有所帮助。

关于c# - 从 C# 解决方案调试 C++ 解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45201203/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com