C++调用C# dll 未能加载文件或程序集
1. 调用前准备:
(1)C# 类库项目正常编译;
(2)C++项目设置“公共语言运行时支持(/clr)”;
(3)C++项目添加C# dll路径及申明dll 所在命名空间
#using "..\\CSDll\\bin\\Debug\\CSDll.dll"
using namespace CSDll;
(4)C++项目创建托管对象,并访问其属性
int main()
{Person ^p = gcnew Person("aaa", 28);std::cout << p->Age << std::endl;
(5)编译成功。
但是启动程序时报错:找不到dll
2. 原因分析:
(1)dll目录错误?不可能,否则编译不会通过;
(2)dll还有其他依赖的dll?就一个简单的测试dll,没有添加其他依赖dll;
3. 解决方案:
方法(1)将C# dll 拷贝到C++项目的可执行目录下,并更新#using 目录(不推荐,因为C# dll每次重新编译后都需要手动复制,不利于项目管理);
方法(2)将C# dll项目的生成目录更改至和C++生成目录二者同目录;
方法(3)C++项目设置延迟加载dll,
参见https://blog.csdn.net/jiangli198867/article/details/103806761
和https://blog.csdn.net/d4567star/article/details/82993777
同样的,没有成功,待后续慢慢研究吧
C++调用C# dll 未能加载文件或程序集相关推荐
- 未能加载文件或程序集.HRESULT:0x80131515解决方法
.dll: 未能加载文件或程序集"AutomationScripts.Automation, Version=4.0.0.0, Culture=neutral, PublicKeyToken ...
- C# 调用NationalInstruments的dll报错问题 未能加载文件或程序集
C# 调用NationalInstruments的dll报错问题 问题原因:dll版本不匹配导致的,需要做如下操作解决问题 未能加载文件或程序集"NationalInstruments.Co ...
- c# 未能加载文件或程序集mysql.data,SQLite的C#,.NET应用自适应32位/64位系统(未能加载文件或程序集“System.Data.SQLite.dll)...
SQLite异常报错 其他信息: 未能加载文件或程序集"System.Data.SQLite, Version=1.0.103.0, Culture=neutral, PublicKeyTo ...
- 未能加载文件或程序集“*****.dll”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。(异常来自HRESULT:0x80131040)
未能加载文件或程序集"*****.dll"或它的某一个依赖项.找到的程序集清单定义与程序集引用不匹配.(异常来自HRESULT:0x80131040) 参考文章: (1)未能加载文 ...
- 未能加载文件或程序集“XXX.dll”或它的某个依赖项的解决方法
问题: 昨天从开发机拷贝exe程序到测试机上测试时,发现程序一运行就报以下错误:未能加载文件或程序集"A.dll"或它的某一个依赖项.找不到指定的模块. 相关知识: 1.应用程序查 ...
- .NET项目运行错误:未能加载文件或程序集“CefSharp.Core.Runtime.dll”或它的某一个依赖项。找不到指定的模块
当你在运行包含CefSharp控件的应用程序时,可能会遇到类似以下错误消息: System.IO.FileNotFoundException: 未能加载文件或程序集"CefSharp.Cor ...
- AForge “未能加载文件或程序集“AForge.Video.FFMPEG.dll”或它的某一个依赖项。找不到指定的模块”
问题:未能加载文件或程序集"AForge.Video.FFMPEG.dll"或它的某一个依赖项.找不到指定的模块. 1.Aforge.Net子项目有个AForge.Video.VF ...
- VS 未能加载文件或程序集“xxx.dll” 原因分析
完整错误信息:"System.IO.FileNotFoundException"类型的未经处理的异常在 未知模块 中发生 未能加载文件或程序集"UTFS.Core.dll ...
- C#工业相机SDK二次开发 未能加载文件或程序集“CLIDelegate.dll”或它的某一个依赖项。找不到指定的模块。”
问题描述 System.Exception:"Exception caught: 未能加载文件或程序集"CLIDelegate.dll"或它的某一个依赖项.找不到指定的模 ...
- 未能加载文件或程序集Noesis.Javascript.DLL或它的某一个依赖项。找不到指定的模块。
一.问题 未能加载文件或程序集"noesis.javascript.dll"或它的某一个依赖项.找不到指定的模块. 二.解决办法 是因为缺少Visual C++的类库所致的. 可以 ...
最新文章
- 大数据征信应用与启示 ——以美国互联网金融公司 ZestFinance为例
- atm系统的用例模型_战斗系统执行式测试经验汇总
- OpenSSL 与 SSL 数字证书概念贴
- ArcGIS实验教程——实验三:矢量数据采集与编辑(矢量化)
- docker jenkins 公钥_搭建 Jenkins 与 GitLab 的持续集成环境
- 后台开发(3)---对软件架构的一些思维脑图整理
- iPhone 13供需接近平衡,iPhone 13 Pro交付时间较长
- python找零钱英镑_[求教!!]怎么用python编写一个找零钱的程序??
- C Linux 多线程入门
- appium+python自动化51-adb文件导入和导出(pull push)
- c/c++ static
- python数据分析案例简单实战项目(二)--疫情数据分析
- 英美文化----CAT与猫
- uva11401:Triangle Counting 递推 数学
- 【计算机网络】中国大学MOOC哈工大国家精品课局域网部分习题
- IOS端使用WebRTC实现一对一音视频通话
- P2P穿透StunServer
- 页面老报错: 对象不支持此属性或方法
- 什么是双因素身份验证?
- 系统升级: PHP(5.1.6-5.4.7) CI(1.7.2-2.1.2)调查记录