【发布时间】:2020-06-05 07:49:46
【问题描述】:
我的 ASP MVC5 Web 应用程序项目的 bin 文件夹中有一个 C++ DLL。 (我已经从原始 C++ 项目中复制并粘贴了它,因为我无法添加引用)我能够调用 DLL 的一些函数(使用 DLLImport)。我的其中一项功能有问题。只有当我能够进入 C++ DLL 的代码时才能解决这个问题。我也有 C++ 项目的代码(使用 Cmake 构建)。 从我的 Web 应用程序代码进行调试时,如何访问 C++ 代码。如果我使用 F11,我应该能够访问 C++ 代码。
【问题讨论】:
-
你调试的是net core web项目还是net framework项目?
-
感谢@PerryQian-MSFT 尝试直接从 C++ 项目的调试文件夹中添加 dll 的引用。我无法添加它,因为它不是 .net 程序集。当我尝试在 Configuration-> Advanced -> Common runtime Support 选项卡中添加 clr 支持时,我无法构建它。请告诉我是否可以在不更改这些配置的情况下添加 dll。
-
您是否按照我的回答来解决您的问题?首先,您可以尝试右键单击您的c++项目-->配置属性-->调试-->将
Debugger Type更改为Mixed(Net Core or Net Framework),然后再次构建您的项目。另外,当你在 c# 项目中调试你的项目时,你应该启用native code debugging。而且我可以在没有任何错误的情况下对其进行测试。 -
在我的 Web 项目中启用本机代码调试后,我的浏览器中出现错误消息:“无法加载文件或程序集 'OmpWeb' 或其依赖项之一。尝试加载格式不正确的程序。说明:在执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关该错误及其源自代码的位置的更多信息。
-
如你所说,我在 DllImport 中使用了 dll 的完整路径,这会导致问题吗?
标签: c++ asp.net-mvc-5 visual-studio-debugging