onvif 框架代码生成
1:gsoap官网(http://gsoap2.sourceforge.net/)下载最新版gsoap(本次版本为gsoap_2.8.17)并解压。
2:新建一个文件夹(OnvifFramework)
将解压的gsoap_2.8.17文件拷贝至OnvifFramework目录下
将gsoap_2.8.17\gsoap-2.8\gsoap 路径下的typemap.dat以及gsoap_2.8.17\gsoap-2.8\gsoap\bin\win32 路径下的wsdl2h.exe soapcpp2.exe也拷贝至该目录下。
3: Onvif官网(http://www.onvif.org/Documents/Specifications.aspx)页面里ONVIF WSDL and XML Schemas Specifications找到各wsdl(18个左右)并下载下来
(右键另存为即可),放入GenerateSource文件夹中。
4:生成onvif.h
生成方式有在线生成和本地生成两种方式。由于网络的原因,在线生成很容易中断。故临时改用本地生成方式,在实际运行时发现,本地生成过程中也需要从网络上下载
相关的依赖文件,并且对文件路径有如下要求:
OnvifFramework
----level1
----level2
----GenerateSource
----typemap.dat
----wsdl2h.exe
----soapcpp2.exe
----remotediscovery.wsdl
----devicemgmt.wsdl
----analytics.wsdl
----analyticsdevice.wsdl
----media.wsdl
----deviceio.wsdl
----display.wsdl
----event.wsdl
----imaging.wsdl
----recording.wsdl
----replay.wsdl
----search.wsdl
----receiver.wsdl
----ptz.wsdl
----ver10
----device
----wsdl
----devicemgmt.wsdl
----media
----wsdl
----media.wsdl
----schema
----onvif.xsd
----ver10
----schema
----onvif.xsd
管理员权限打开CMD,切换至GenerateSource目录下,将如下指令贴到CMD窗口中回车运行即可生成onvif.h文件:
wsdl2h -o onvif.h -c -s -t ./typemap.dat
remotediscovery.wsdl devicemgmt.wsdl analytics.wsdl
analyticsdevice.wsdl media.wsdl deviceio.wsdl display.wsdl
event.wsdl imaging.wsdl recording.wsdl replay.wsdl search.wsdl
receiver.wsdl ptz.wsdl
5:通过onvif.h生成源代码框架
将如下指令贴到CMD窗口中回车运行即可:
soapcpp2 -2 -c onvif.h -x -I gsoap下的import文件夹路径 -I gsoap文件夹路径
onvif 框架代码生成的更多相关文章
- 使用gSOAP工具生成onvif框架代码
<工具产生背景> 由于SOAP是一种基于xml的文件,手动编写SOAP文件太机械耗时,在这种背景下产生了gSAOP 这个工具,用于生成各种类型的代码,目前支持C/C++, ...
- 自定义Visual Studio.net Extensions 开发符合ABP vnext框架代码生成插件[附源码]
介绍 我很早之前一直在做mvc5 scaffolder的开发功能做的已经非常完善,使用代码对mvc5的项目开发效率确实能成倍的提高,就算是刚进团队的新成员也能很快上手,如果你感兴趣 可以参考 http ...
- 数据库逆向框架代码生成工具:MyBatis Generator的使用
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration ...
- ORM框架-VB/C#.Net实体代码生成工具(EntitysCodeGenerate)【ECG】4.5
摘要:VB/C#.Net实体代码生成工具(EntitysCodeGenerate)[ECG]是一款专门为.Net数据库程序开发量身定做的(ORM框架)代码生成工具,所生成的程序代码基于OO.ADO.N ...
- 利用代码生成工具Database2Sharp生成ABP VNext框架项目代码
我们在做某件事情的时候,一般需要详细了解它的特点,以及内在的逻辑关系,一旦我们详细了解了整个事物后,就可以通过一些辅助手段来提高我们的做事情的效率了.本篇随笔介绍ABP VNext框架各分层项目的规则 ...
- 代码生成工具Database2Sharp中增加视图的代码生成以及主从表界面生成功能
在代码生成工具的各种功能规划中,我们一向以客户的需求作为驱动,因此也会根据需要增加一些特殊的功能或者处理.在实际的开发中,虽然我们一般以具体的表进行具体业务开发,但是有些客户提出有时候视图开发也是很常 ...
- 转:ORM框架
转自 程序员成长之路:http://blog.csdn.net/zxc22436/article/details/6875220 对象关系映射(ORM)提供了概念性的.易于理解的模型化数据的方法.OR ...
- ORM 框架简介
对象-关系映射(Object/Relation Mapping,简称ORM),是随着面向对象的软件开发方法发展而产生的.面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系数据库是企业级应 ...
- ONVIF学习-ONVIF开发框架搭建(C++)
第一步.下载gsoap 从gsoap官网(http://www.genivia.com/products.html#notice)下载最新版gsoap(博主用的是gsoap_2.8.45).gsoap ...
随机推荐
- spring(AOP)静态代理
姓名:黄于霞 班级:软件151 1.定义抽象主题接口,假设需实现一个计算的类Math.完成加.减.乘.除功能,如下所示: 2.主题类,算术类,实现抽象接口. 3.代理类 4.测试运行 5.总 ...
- 用VS2017编写C语言的Hello World
1.新建项目 2.选择新建空项目 3.在源文件处右键单击,选择添加-新建项 4.选择“c++文件”,将名称后缀改成.c即可用C语言编写程序 5.编写代码: #include <stdio.h&g ...
- 带你领略Linux系统发展及版本更迭
Linux的出现是在1991年,Linus Torvalds的学生开发的,最初的Linux是类似Unix操作系统,可用于386,486或奔腾处理器的计算机上.Linus Torvalds是一个伟人,他 ...
- vi编辑器和系统分区
作业一:1) 将用户信息数据库文件和组信息数据库文件纵向合并为一个文件/1.txt(覆盖) cat /etc/passwd /etc/group > /1.txt2) 将用户信息数据库文件和用户 ...
- winfrom程序文本框第一次选中问题
想实现这样的功能: 就是在panel中的文本框,当第一次点击文本框时,全选文本框的内容:再次选择时,可以全选,也可以部分选中, 可是文本框总是从左全部选中,还不能从右边选择,在Enter或Down事件 ...
- 【转载】Druid 介绍及配置
原文链接:https://www.cnblogs.com/niejunlei/p/5977895.html 1. Druid是什么? Druid是Java语言中最好的数据库连接池.Druid能够提供强 ...
- Python标准库01正则表达式
在学习网络爬虫的过程中,需要抓取网页的评论数,涉及到正则表达式,便顺便看了看.正则表达式是文字处理中常用的工具. 1正则表达式的常用字符串 . 任何单个字符 [] 字符集对单个字符给出取值 ...
- volatile与synchronized有什么区别?
下列说法正确的是()? A.我们直接调用Thread对象的run方法会报异常,所以我们应该使用start方法来开启一个线程 B.一个进程是一个独立的运行环境,可以被看做一个程序或者一个应用.而线程是在 ...
- Android 面试100问- 0序0
准备找android方面的工作,现收集面试题,打算收集100个并记录
- 初读"Thinking in Java"读书笔记之第七章 --- 复用类
组合语法 将对象引用置于新类中,即形成类的组合. 引用初始化方法 在定义处初始化. 在类的构造器中初始化. 在使用这些对象之前,进行"惰性初始化". 使用实例初始化. 继承语法 J ...