WTL 学习六 gsoap 调用webservice的过程
发布时间:2020-12-17 00:58:03 所属栏目:安全 来源:网络整理
导读:? ? ? ?本文回顾了用WTL调用Webservice的过程,gsoap 版本为?gsoap_2.8.3 新建一个webservice,返回一个简单的unicode字符串. ?? 内容是 strError = string.Empty; string strSessionXml = "?xml version="1.0" encoding="gb2312"?rootsessionid测试/ses
? ? ? ?本文回顾了用WTL调用Webservice的过程,gsoap 版本为?gsoap_2.8.3
?? 内容是 strError = string.Empty; string strSessionXml = "<?xml version="1.0" encoding="gb2312"?><root><sessionid>测试</sessionid></root>"; return strSessionXml;
生成 参数 及提示如下
#include "FileWebServiceSoap.nsmap"
#include "soapFileWebServiceSoapProxy.h"? 在某个按钮的单击事件里添加代码,注意一些设置,否则容易有乱码! FileWebServiceSoapProxy webservice("http://localhost:2000/FileWebService.asmx"); // 定义Webservice地址 webservice.FileWebServiceSoapProxy_init(SOAP_C_UTFSTRING,SOAP_C_UTFSTRING); // 设置传入参数,传出参数的编码方式 _ns1__FileGetSession begin; // 调用方法前的设置 begin.soap = webservice.soap; //必须 begin.strXml = ""; //传入的参数 _ns1__FileGetSessionResponse end; // webservice返回 end.soap = webservice.soap; //end.FileGetSessionResult = ""; //end.strError =""; webservice.FileGetSession(&begin,&end); //调用方法 int iLen = strlen(end.FileGetSessionResult); //如果包含中文,这里为乱码 wchar_t *pUnicode = new wchar_t[iLen]; MultiByteToWideChar(CP_UTF8,(LPCSTR)end.FileGetSessionResult,-1,pUnicode,iLen); //转换一下 MessageBox((LPCTSTR)pUnicode,_T("")); //pUnicode 显示的正常 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |