怎么在C#中添加用C语言开发的动态链接库dll文件(vs2010)?

怎么在C#中添加用C语言开发的动态链接库dll文件(vs2010)?,第1张

你的DLL必须是COM组件才能通过这种方式添加引用,如果不是就不行。
但是,如果不是COM组件,有另外一种方式使用dll,就是import里面的函数,需要做个包装类,在里面把dll中的方法包装一下,具体的可以网上搜搜C# import dll用法。

在c#类里添加[DllImport("dll名dll")]即可:
比如我用c开发了一个testdlldll的dll文件,则我在c#类的构造函数前可以添加[DllImport("testdlldll")],就把c开发的动态链接库添加进了c#项目里。

1、创建引用动态链接库的应用程序:在解决方案上单击鼠标右键》添加》新建项目 2、在添加新项目中选择其它语言->Visual C++->Win32,选择Win32 控制台应用程序,设置名称:simpleDLLTest 3、单击确定,在出现的Win32 应用程序向导的概述对话框中

LoadLibrary("_FileName") 返回得到的模块句柄,可以加载一个动态连接库或exe文件。

GetProcAddress(Hinstance,lpname) 用来获取指定的动态连接库函数的地址
Hinstance为由LoadLibrary返回的模块句柄,lpname为文件名/函数名,返回值,成功返回动态连接库的地址,失败返回NULL

注意 LoadLibrary 的返回值。

您好。
试试以下方法:
不添加引用,在源码头部添加:
using SystemRuntimeInteropServices;
然后在类中声明方法:
[DllImport("dlldll")]
extern 函数返回类型 函数名(参数);


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/10379863.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-08
下一篇2023-05-08

发表评论

登录后才能评论

评论列表(0条)

    保存