C#中加载dll的问题

本文介绍了在C#中加载C++编译的动态库(DLL)时遇到的问题及解决方案。通过DllImport加载DLL,并探讨了“找不到指定模块”异常的原因,包括检查路径和依赖的其他DLL。此外,还分享了如何使用LordPE工具查看DLL中的函数,以解决找不到入口点的错误。
摘要由CSDN通过智能技术生成

最近在C#上进行H264解码的网络摄像头,通过各种折腾,还是没法解决,无奈之下只好使用在C#下加载ffmpeg的动态库进行,在加载的时候说不遇到问题那是不可能的。


下面就我遇到的问题和解决方案进行发表


1.加载方法

很多人都想着通过右键引用的方法进行dll的加载,当然那是简便的方法,不过对于用C++编译的动态库貌似这方法行不通,往往会提示“未能添加XXX.dll的引用。请确保此文件可访问并且是一个有效的程序集或COM组件”。因此,本人想通过右键引用的方法行不通。

囧么办呢?

用DllImport加载吧。

[DllImport("XXX.dll")]
public static extern void XXX();

当然,DllImport还有一些参数和方法可以避免一些问题的,我也没仔细研究透在这先不去介绍。

通过这个加载之后你只要关的dll放到bin\Debug或bin\Release目录下就行了。

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值