求助,调用动态库问题,各位大神帮帮忙啊

li609365651 2014-04-17 01:14:32
本人新手,刚接手了一个项目,对于动态库引用这块 ,有很多不太了解,希望各位大神们能帮帮忙

/// <summary>
/// 实时数据回调函数
/// </summary>
/// <param name="nRealHandle">NET_SDK_RealPlay 返回值</param>
/// <param name="pBuffer">视频数据</param>
/// <param name="nSize">数据长度</param>
/// <param name="LPFrameInfo">视频详细信息</param>
/// <param name="pUser">用户数据</param>
typedef void (CALLBACK *fnRealDataCallBack) (LONG nRealHandle, unsigned char* pBuffer, LONG nSize, LPFrameInfo lpFrame, void* pUser);

//============================实时预览===================================
/// <summary>
/// 实时预览
/// </summary>
/// <param name="nLoginID">NET_SDK_Login的返回值</param>
/// <param name="pClientInfo">预览参数</param>
/// <param name="fnRealDataCB">预览回调数据,非解码数据</param>
/// <param name="pUser">用户数据</param>
/// <returns>-1失败,其他值作为NET_SDK_StopRealPlay等函数传入参数</returns>
IRLABNETSDK_API LONG __stdcall NET_SDK_RealPlay(LONG nLoginID, LPNET_SDK_ClientInfo lpClientInfo,
fnRealDataCallBack fuRealDataCB = NULL, void* pUser = NULL)

这是动态库的部分接口函数,我想在c#调用NET_SDK_RealPlay这个函数,怎么实现?对于c#调用回调函数这块,真的是不太理解,网上收索很多资料,但是看了感觉还是迷迷糊糊的
...全文
114 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
li609365651 2014-04-19
  • 打赏
  • 举报
回复
谢谢两位了,哈哈,问题解决了
加州娘娘 2014-04-17
  • 打赏
  • 举报
回复
Mark,你可以根据你的项目名称搜索一下
品铭工作室 2014-04-17
  • 打赏
  • 举报
回复
void (CALLBACK *fnRealDataCallBack) (LONG nRealHandle, unsigned char* pBuffer,) ==》 Action<long, string > Action_CallBack = delegate( long ln , string s ){ } ; LONG __stdcall NET_SDK_RealPlay(LONG nLoginID, LPNET_SDK_ClientInfo lpClientInfo, fnRealDataCallBack fuRealDataCB = NULL, void* pUser = NULL) ==>> long NET_SDK_RealPlay( long nloginID , obj ,lpClientInfo, int callback , out object pUser) ; 上面的代码还要加Dll...,这里就不写了,主要是如何调用这个函数(下面是伪代码) Inptr p = Marshal.GetFunctionPointerForDelegate( Action_CallBack ); int intP = p.toInt(); object obj =null ; Marshal.getObjectFor long rs = NET_SDK_RealPlay( 111 , new object() , intP , out obj ) 大概是这样子的思路吧,这里还涉及了一些非托管的控制技术,看一下另写的非托管代码吧,应该有这方面的示例 (我没空了)

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧