网络摄像机SDK怎么进行二次开发,客户端软件怎么调用SDK里的东西
2个回答
推荐于2016-07-23
展开全部
有两种方法,一种是直接DllImport,就如下面几个的写法,函数名和参数返回值,要跟dll中一至,注意,C#类型与C不一样,如C#中int相当于C++中long等。
[DllImport("kernel32.dll")]//加载dll
public extern static IntPtr LoadLibrary(string path);
[DllImport("kernel32.dll")]//获取函数入口指针
public extern static IntPtr GetProcAddress(IntPtr lib, string funcName);
[DllImport("kernel32.dll")]//释放dll
public extern static IntPtr FreeLibrary(IntPtr lib);
还有另一种方法(某些sdk用这种方法更安全):
1。先定委托类型,定义与dll中函数一至
2.Intptr handle=LoadLibrary("a.dll");//加载动链
3.函数入口 Intprt t=GetProcAddress(handle, "函数名");
4。将函数入口转换为委托 delegate System.Runtime.InteropServices.Marshal.GetDelegateForFunctionPointer(t...)
5.调用委托!
[DllImport("kernel32.dll")]//加载dll
public extern static IntPtr LoadLibrary(string path);
[DllImport("kernel32.dll")]//获取函数入口指针
public extern static IntPtr GetProcAddress(IntPtr lib, string funcName);
[DllImport("kernel32.dll")]//释放dll
public extern static IntPtr FreeLibrary(IntPtr lib);
还有另一种方法(某些sdk用这种方法更安全):
1。先定委托类型,定义与dll中函数一至
2.Intptr handle=LoadLibrary("a.dll");//加载动链
3.函数入口 Intprt t=GetProcAddress(handle, "函数名");
4。将函数入口转换为委托 delegate System.Runtime.InteropServices.Marshal.GetDelegateForFunctionPointer(t...)
5.调用委托!
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
美狐美颜sdk
2024-08-06 广告
2024-08-06 广告
美颜SDK推出多个版本的原因有以下几点:1. 满足不同平台的需求:美颜SDK的不同版本可以满足不同平台的运营需求。例如,对于直播平台,需要更多的美颜功能来吸引观众,而视频聊天平台则需要的是精简版的美颜功能。通过提供不同版本的美颜SDK,可以...
点击进入详情页
本回答由美狐美颜sdk提供
2014-12-03
展开全部
看 sdk 中的例子吧。。。。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询