mfc使用gsoap访问python端webservice服务及中文乱码问题

webservice实现简介

客户端用MFC加gsoap实现,
服务端用python用spyne库实现。
服务端端口8000, 外露接口输入字符串,得到字符串:

@rpc(Unicode, _returns=Unicode)def get_id(self, config):

下载gsoap

https://sourceforge.net/projects/gsoap2/files/latest/download

比如:
gsoap_2.8.134.zip

在目录gsoap-2.8\gsoap\win32与win64下,存在2个exe 文件:
soapcpp2.exe 该工具转换WSDL和XSD文件到带有注释的C/C++定义文件

Wsdl2h.exe 该工具从带有注释的C/C/++定义文件生成RPC代码和XML序列化

以64位系统为例
进入目录gsoap_2.8.134\gsoap-2.8\gsoap\bin\win64

制作webservice头文件

  1. 先运行webservice服务中,比如牛听听设备注册工具.exe
    这时候可通过浏览器访问其服务的wsdl,比如http://localhost:8000/?wsdl
  2. 再根据gsoap解压的路径执行wsdl2h命令生成webservice.h头文件
    假设服务端口是8000.
  3. 如果服务端是java写的请执行这步,否则忽略
    新建type.dat,用于解决windows下gsop与javawebservice服务端通信时的中文乱码问题。
xsd__string 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/829899.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Windows 安全中心:页面不可用 你的 IT 管理员已限制对此应用的某些区域的访问,并且你尝试访问的项目不可用。有关详细信息,请与 IT 支持人员联系。

问题 1:Windows 安全中心提示:【页面不可用 你的 IT 管理员已限制对此应用的某些区域的访问,并且你尝试访问的项目不可用。有关详细信息,请与 IT 支持人员联系。】 修复 Microsoft.SecHealthUI 方法 1:命令自动重装安…

Docker 部署与操作

一 国内: 中国电信天翼云 提供包括云主机在内的全方位云计算服务,侧重于安全合规和企业级服务。 利用电信的网络优势,提供稳定可靠的基础设施服务。 中国联通沃云 提供包括云主机在内的多项云计算服务,适合不同行业和场景。 …

【Spring Security系列】Spring Security整合JWT:构建安全的Web应用

前言 在企业级开发或者我们自己的课程设计中,确保用户数据的安全性和访问控制非常重要。而Spring Security和JWT是都两个强大的工具,它俩结合可以帮助我们实现这一目标。 Spring Security提供了全面的安全功能,而JWT则是一种用于身份验证的…

Python 实现12306抢票脚本

我必须再次强调,使用或创建12306抢票脚本可能违反了12306网站的使用条款和条件,以及相关法律法规。因此,我不能提供任何关于如何编写或使用抢票脚本的具体代码或指导。 不过,我可以向您展示如何使用Python编写一个基本的网络爬虫来自动查询和预订火车票的基本步骤。但请注…

小程序为什么必须安装SSL证书?怎么挑选?——建议收藏

小程序使用SSL证书的原因主要包括: 1. 安全要求:微信小程序等平台强制要求使用HTTPS加密协议,这意味着必须部署SSL证书以确保所有网络请求的安全性。没有SSL证书,小程序无法正常上线使用。 2. 数据加密:SSL证书通过加密…

Python基础:【习题系列】多选题(一)

在Python中,哪些关键字用于流程控制? A. if B. function C. while D. for 答案:A, C, D 关于Python中的数据类型,以下哪些说法是正确的? A. 列表是可变的 B. 元组是不可变的 C. 字典可以使用可变数据类型作为键 D. 集合不允许重复元素 答案:A, B, D 在Python中,以下哪些…

排序算法(总结)-C++

排序算法 篇幅较长请耐心看完冒泡排序 ( B u b b l e S o r t Bubble Sort BubbleSort)选择排序 ( S e l e c t i o n S o r t Selection Sort SelectionSort)插入排序 ( I n s e r t i o n S o r t Insertion Sort InsertionSort)希尔排序 ( S h e l l S o r t Shell Sort She…

51单片机入门(一)

1. 51单片机的基础介绍 2. RAM和ROM的区别 总体而言,RAM和ROM在计算机系统中起着不同的角色,RAM用于临时存储运行时数据,而ROM用于存储永久性的固件和系统程序。 3. 为什么叫51单片机 因为51系列单片机都是使用Intel 8031指令系统的单片机…

linux网络编程启动!(开端)

网络设计模式 :就两种模型 b/s 模型 : 浏览器—>服务器 优点是:跨平台。开发成本低 缺点是:网络通信的时候必须要使用http/https协议 http协议 是个应用层协议 不能在磁盘缓存或者从磁盘加载大量数据 http 与https 多了一层加密 c/s模型 …

C# Solidworks二次开发:访问平面、曲面相关API详解

大家好,今天要介绍的是关于平面、曲面相关的API。 下面是相关的API: (1)第一个为ISurfacePlanarFeatureData,这个API的含义为允许访问平面表面特征,下面是官方的具体解释: 下面是官方使用的例子&#xff…

美国站群服务器的配置选择要点?

美国站群服务器的配置选择要点? 随着互联网的快速发展,站群已经成为许多网站主和企业选择的一种有效的网络推广方式。而在搭建站群时,选择适合的服务器配置是至关重要的。美国作为全球互联网技术的先锋之一,拥有先进的服务器设施和强大的网…

【 书生·浦语大模型实战营】作业(四):XTuner 微调 LLM:1.8B、多模态、Agent

【 书生浦语大模型实战营】作业(五):LMDeploy 量化部署 🎉AI学习星球推荐: GoAI的学习社区 知识星球是一个致力于提供《机器学习 | 深度学习 | CV | NLP | 大模型 | 多模态 | AIGC 》各个最新AI方向综述、论文等成体系…

golang封装调用kafka的工具包

封装一个golang调用kafka的工具包,包含了consumer,producer,auth,在自己的生产环境上做过验证。可以做参考作用,也可以直接使用。 部分代码 // Run 执行消费动作 func (cg *ConsumerGroup) Run(ctx context.Context) {defer cg.close()for {select {ca…

Linux——(关于权限常见的3个问题)

文章目录 1.修改文件或者目录的拥有者和所属组1.1chown指令1.2chgrp指令 2.常见的权限三个问题2.1对应一个目录,如果要进入,需要什么权限?2.2为什么我们创建的文件默认权限不是7772.2.1关于Linux下的权限掩码 2.3文件能否被删除取决于什么2.3…

Beyond Chain-of-Thought: A Survey of Chain-of-X Paradigms for LLMs论文阅读笔记(未完待续)

地址:https://arxiv.org/html/2404.15676v1 一些论文合集:https://github.com/atfortes/Awesome-LLM-Reasoning 背景 思维链 (Chain-of-Thought,CoT) 是一种被广泛采用的提示方法,它激发了大型语言模型 …

《HCIP-openEuler实验指导手册》2.1安装和测试Nginx

知识点 Nginx (发音为 “engine x”) 是一个开源的高性能 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。由 Igor Sysoev 创建并维护,其设计用于处理高并发连接,具有高度的可扩展性和灵活性。 安装步骤 yum方式安装 dn…

读书笔记--数据管理知识体系的阅读总结感悟

最近继续研读DAMA数据管理知识体系之数据管理章节,结合自身在应用系统建设、数据治理工作实践,有所感悟并记录如下,供大家参考。数据管理工作需要技术和非技术的双重技能,由业务人员和信息技术人员相互协作,共同来承担责任,确保组织管理的数据是高质量的,主要驱动力是使…

go语言实现简单ngnix样例

目录 1、代码实现样例: 2、postman调用ngnix,转发: 1、代码实现样例: package mainimport ("bytes""encoding/json""io""log""net/http""net/http/httputil""…

Chapter 1-17. Introduction to Congestion in Storage Networks

Q: Isn’t increasing network capacity the ultimate solution to network congestion? Increasing network capacity is the solution when a lack of network capacity is the root cause of congestion. There are many more reasons for network congestion and in thos…

ruoyi-nbcio-plus基于vue3的flowable收回任务后重新进行提交表单的处理

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 http://218.75.87.38:9666/ 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码: h…