为何明明很简单的函数声明,用wsdl2h.exe生成后变得很复杂

shakaqrj shakaqrj 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
步骤这样:
写一个头文件server.h:
int ns__add(int num1, int num2, int *sum);

用soapcpp2.exe生成相关的文件,其中包含一个ns.wsdl

再用wsdl2h -s -o service.h D:\XXX\ns.wsdl(我也不知道这样对不对 依葫芦画瓢)
结果生成出来的service.h变成了这样


int __ns1__add(
_ns2__add* ns2__add, ///< Input parameter
_ns2__addResponse &ns2__addResponse ///< Output parameter
);
class _ns2__add
{ public:
/// Element "num1" of XSD type xs:int.
int num1 1; ///< Required element.
/// Element "num2" of XSD type xs:int.
int num2 1; ///< Required element.
/// A handle to the soap struct context that manages this instance when instantiated by a context or NULL otherwise (automatically set).
struct soap *soap ;
};
class _ns2__addResponse
{ public:
/// Element "sum" of XSD type xs:int.
int* sum 0; ///< Optional element.
/// A handle to the soap struct context that manages this instance when instantiated by a context or NULL otherwise (automatically set).
struct soap *soap ;
};


为何明明很简单的一个函数,却被包装成这样?如果我用这样的头文件soapcpp2.exe 生成出来的文件肯定和之前用server.h的不一样,最后多半调用不成功吧
是不是我生成头文件的方式有误?
...全文

相关推荐

wsdl.exe-生成wsdl的代码

生成的代理类简化了与Web服务交互的过程,使得客户端代码更加简洁。7. **注意事项** - `wsdl.exe`生成的WSDL可能不包含所有服务的细节,尤其是当服务使用自定义类型或复杂的逻辑时。

涵树_fx

简化Web服务代理生成与调用:wsdl.exe工具使用指南

本文介绍了如何使用wsdl.exe工具简化Web服务代理的创建过程。wsdl.exe是一个由微软提供的命令行工具,它能够根据Web服务的WSDL描述自动生成代理文件。文章详细说明了该工具的使用方法、参数配置以及如何将生成的代理文件编译并用于调用Web服务。通过实例展示了代理文件的创建、编译和Web服务的调用过程,并强调了使用标准通信协议(如SOAP)的重要性,这些标准极大地简化了Web服务的使用。

高傲的大白杨

wsdl2h、soapcpp2生成的onvif文件

这对于理解服务的数据结构和函数原型至关重要,因为它将复杂的WSDL描述转换为可以直接在C/C++代码中使用的形式。

hhlhhll

生成wsdl文件

总的来说,生成WSDL文件是Web服务开发的关键环节,它提供了服务的完整规范,使得不同系统间的集成变得更加标准化和自动化。

weixin_38669628

axis2根据wsdl生成客户端代码

在 Axis2 中,我们可以使用`org.apache.axis.wsdl.WSDL2Java`工具,根据WSDL文件自动生成与服务交互所需的Java客户端代码,这极大地简化了开发者的工作,无需手动编写复杂的

gl642541942
评论 6
收藏 已收藏
分享
返回顶部
shakaqrj
VC/MFC 16,550 成员 421,606 内容