资源下载地址:http://download.csdn.net/detail/ghz_sd/9846887

 

我不记得哪位大神的文章指导了,把好多东西都弄的妥妥的,于是我就做了少量的修改,把它编译成库,可以通过mfc比较方便的调用。

具体的细节我不多讲了,网上多的是,我就稍微的说一下我程序的结构:

MFC下使用Onvif的例子

GSOnvifOperator 是封装的dll库,GSOnvifOperatorDemo是调用库的例子,GSOnvif是未封装库的调用例子。

GSOnvifOperatorDemo调用的接口文件GSOnvifOperator.h做下简要说明:

获取当前主机ip的接口为:GetAddrList

搜索得到onvif设备的接口为:GetOnvifDevUrlList

添加一个onvif设备的接口为:AppendOnvifDev,只有添加后才能进行控制

 

在控制预置位的时候需要先获取预置位接口:GetPresetList

详情可以在代码中看GSOnvifOperator.h 的接口定义。

 

执行目录:_build\bin

MFC下使用Onvif的例子

其中:OnvifLib.lib OnvifLibd.lib 分别对应onvif实现的releasedebug版的静态库

GSOnvif.exe 直接调用onviflib.lib

GSOnvifOperator.dll和GSOnvifOperatord.dll对onviflib.lib做了一层封装,由GSOnvifOperatorDemo.exe调用

 

 

程序执行界面如下:

MFC下使用Onvif的例子

如果本机有多个ip地址,第一步先获取本机地址,选择与onvif设备一个局域网的ip,然后点击搜索onvif设备。这部分不影响控制。

搜索有10S的时间。

 

如果不搜索ipc设备,在下面的编辑框直接填写onvif的地址,然后点击添加,再控制区域选择哪个onvif设备就可以控制哪个onvif设备了。

 

预置位列表需要先获取再进行调用和设置

MFC下使用Onvif的例子

 

其中  PTZ的控制速度是1-100

 

 

 

 

 

 

 

 

 

相关文章: