C#海康流媒体客户端开发--非常棘手

aguoIT 2008-07-16 09:29:55
海康的DEMO使用VC++开发的,我是用C#来开发的,涉及到以下两个函数要求用C#引用:

typedef int (__stdcall *pDataRec)(int sid, int iusrdata, int idatatype, char* pdata, int ilen);
typedef int (__stdcall *pMsgBack)(int sid, int opt, int param1, int param2);
typedef int HSESSION;
//IHikClientAdviseSink为回调函数的集合类,就是一个抽象类,只要有实现就行了

CLIENT_API HSESSION __stdcall HIKS_CreatePlayer(IHikClientAdviseSink* pSink, void* pWndSiteHandle, pDataRec pRecFunc, pMsgBack pMsgFunc=0,int TransMethod=0);//创建Player

CLIENT_API int __stdcall HIKS_OpenURL(HSESSION hSession,const char* pszURL,int iusrdata);//打开URL

可运行到HIKS_OpenURL每次都返回-1,说明连接失败,但我在服务器端上看到已经连上服务器软件了,就是没有连上设备(VC同样的代码运行没问题的)。希望做过类似项目的高手能够不吝赐教。




...全文
1165 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
TENGLIYONG 2010-11-19
  • 打赏
  • 举报
回复
我也遇到这个问题了。后来发现应该是由于vs.NET是不支持虚函数导致的。
我试了C#和VB。net的接口,也是出现楼主一样的问题。
强烈建议使用CreatePlayer第四个参数pMsgBack回调来创建播放器。
同意doubaijun的意见。
最后一句,我最后是用MFC解决的。
狼哥 2009-04-02
  • 打赏
  • 举报
回复
这个问题已经解决,我想主要是我们的IHikClientAdviseSink这个抽象类写的有问题。改成消息回调问题就解决了。

public delegate int pMsgBack(int sid, int opt, int param1, int param2);





pMsgBack mb = new pMsgBack(MsgBack);

playSession = hkClient.HIKS_CreatePlayer(null, mHand, null, mb, 1);



有问题的加我qq176122348 一起探讨
zozo98 2009-03-11
  • 打赏
  • 举报
回复
关注中!!!!
C#高手来看看,怎么实现啊!!!
http://www.hikvision.com/bbs/topic.aspx?topicid=955
laowang2 2009-03-08
  • 打赏
  • 举报
回复
问题解决了吗?
yddb 2008-12-06
  • 打赏
  • 举报
回复
我也遇到你的同样问题,我是没有实行回调函数类,我用回调函数实现了相同的功能

具体调用如下:
pMsgBack mb = new pMsgBack(MsgBack);
hSession = HIKS_CreatePlayer(null, _handle, null, mb, 0);

其中mb如下:
public delegate int pMsgBack(int sid, int opt, int param1, int param2);
龙宜坡 2008-09-08
  • 打赏
  • 举报
回复
现在也碰到了楼主同样的问题,汗!
aguoIT 2008-07-16
  • 打赏
  • 举报
回复
谢过agebu1983,你提供的那个是直连到DVR的,我要做的是基于流媒体服务器转发的客户端。
aguoIT 2008-07-16
  • 打赏
  • 举报
回复
海康我都联系过了, 人家都是用VC写的,对C#不清楚,我测试VC也没问题,主要是用C#写了很多了,不然我就用VC重写了。
yagebu1983 2008-07-16
  • 打赏
  • 举报
回复
http://www.cnblogs.com/goodyao/archive/2008/06/30/1232690.html
不知对你用不用??
yagebu1983 2008-07-16
  • 打赏
  • 举报
回复
没搞过!!!
烈火焚身 2008-07-16
  • 打赏
  • 举报
回复
帮你顶下!
zincy 2008-07-16
  • 打赏
  • 举报
回复
rrrrrrrrrr
twtetg 2008-07-16
  • 打赏
  • 举报
回复
关注ing,帮你顶下!
myh0305 2008-07-16
  • 打赏
  • 举报
回复
直接找海康的技支

110,546

社区成员

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

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

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