C#调用DLL方案收集
来源:互联网 发布:二维数组定义 编辑:程序博客网 时间:2024/06/04 18:20
c#调用User32.dll方法 http://blog.csdn.net/wanbinwb2012/article/details/11640541
c#(winform)环境下使用动态链接库dll的详解 http://blog.csdn.net/qq_31454137/article/details/51404460
vlc在C#的使用方法 http://blog.csdn.net/io437/article/details/51188045
C#直接使用DllImport外部Dll的方法 http://blog.csdn.net/u011981242/article/details/52622923
1.引入命名空间
using System.Runtime.InteropServices
2.写调用的方法
[DllImport("READCARD.DLL", EntryPoint = "STK_DownLoadList")]
private static extern int STK_DownLoadList(参数);
就这样OK啊!
Sample: C风格DLL
using System.Runtime.InteropServices; //支持DllImport[DllImport("Play.dll", SetLastError = true, CallingConvention = CallingConvention.Cdecl, EntryPoint = "Zs_Ini")]public static extern void Zs_Ini(); //环境初始化[DllImport("Play.dll", SetLastError = true, CallingConvention = CallingConvention.Cdecl, EntryPoint = "Zs_Quit")]public static extern void Zs_Quit(); //环境退出[DllImport("Play.dll", SetLastError = true, CallingConvention = CallingConvention.Cdecl, EntryPoint = "Zs_StartPlay")]public static extern IntPtr Zs_StartPlay(IntPtr hwnd, string rtsp, string userNmae, string passWord);//开始播放[DllImport("Play.dll", SetLastError = true, CallingConvention = CallingConvention.Cdecl, EntryPoint = "Zs_StopPlay")]public static extern void Zs_StopPlay(IntPtr hVideoZS);//停止播放[DllImport("Play.dll", SetLastError = true, CallingConvention = CallingConvention.Cdecl, EntryPoint = "Zs_IsPlaying")] public static extern bool Zs_IsPlaying(IntPtr hVideoZS);//是否在播放中
Sample : 调试输出
using System.Diagnostics; //支持DebugDebug.WriteLine("Ini");
#1
遇到的BUG: C#调用C的dll出现 This is usually a result of calling a function declared with one calling convent
解决:这个应该是C dll中的导出函数的调用约定和C#里面声明的调用约定不一样,一般C#中是stdcall,c中默认的导出是csdecl,
这个你可以检查一下,C#可以用DllImport这个attribute来调整调用约定. 相应的回调函数也是需要修改的。
- C#调用DLL方案收集
- c#调用c++dll方案总结
- C#调用DLL方法
- C#中调用DLL
- C# 中调用DLL
- c#调用外部dll
- c#调用dll
- C#中调用dll
- c# 调用dll文件
- C#中调用DLL
- c#调用DLL
- c#调用DLL
- C#调用dll
- C#调用dll方法
- PB7调用C# dll
- 如何调用C# DLL
- C#调用dll
- c#调用DLL
- 双目测量空间中两点距离
- Java学习笔记
- Residual Networks
- 原生php 配合异常 处理事务
- JAVA-任意对象转换成JSON,json转换成指定对象
- C#调用DLL方案收集
- 在有序但含有None的数组中查找字符串 Python 版
- PAT 乙级 1001——1005 C语言
- 深度学习硬件(GPU、FPGA、ASIC、DSP)
- JAVA-使用反射为任意对象生成XML
- (六)java并发编程--synchronized同步块
- jstat命令详解
- ##Win7下Cmake编译配置opencv3.3+contrib+cuda7.5
- Git使用简介二(入门级)