VC6.0中调用Webservice是连接对象创建失败,什么原因?该如何解决
VC6.0中调用Webservice是连接对象创建失败,什么原因?
HRESULT hr;
hr=CoInitialize(NULL);
//创建SoapConnector类的对象
SoapConnector.CreateInstance(__uuidof(HttpConnector));
//指定Web服务的地址
SoapConnector->Property["EndPointURL"] =(LPSTR)(LPCTSTR)WebUrl;
//SoapConnector->Property["EndPointURL"] ="";
//与Web服务连接
hr=SoapConnector->Connect();
if(FAILED(hr)) return "";
//指定Web服务完成的操作
SoapConnector-> Property ["SoapAction"]=_T("http://WebXml.com.cn/getEnCnTwoWayTranslator");
//准备发送消息给Web服务
SoapConnector-> BeginMessage();
// 创建SoapSerializer对象
Serializer.CreateInstance(__uuidof(SoapSerializer));
// 将serializer连接到connector的输入字符串
Serializer->Init(_variant_t((IUnknown*)SoapConnector->InputStream));
// 创建SOAP消息
Serializer-> startEnvelope( "soap", "", "");
Serializer->startBody("");
Serializer-> startElement( "getEnCnTwoWayTranslator", "http://WebXml.com.cn/", "", "soap");
Serializer-> startElement( "Word", "", "", "soap");
Serializer-> writeString((_bstr_t)(LPCTSTR)Words);
Serializer-> endElement();
Serializer-> endElement();
Serializer-> endBody();
Serializer-> endEnvelope();
//消息真正地发给Web服务
hr=SoapConnector->EndMessage();
if(FAILED(hr)) return "";
// 读取响应
Reader.CreateInstance(__uuidof(SoapReader));
上面是我的代码,红色的部分是处问题的地方,我在XP系统里SoapConnector对象可以成功的建立;但是把程序移植到Win2003的系统上,SoapConnetor对象总是建立失败,不知道原因在哪里?请大侠指点迷津!感激不尽!
------解决方案--------------------
创建失败,那报什么错呢?
HRESULT hr;
hr=CoInitialize(NULL);
//创建SoapConnector类的对象
SoapConnector.CreateInstance(__uuidof(HttpConnector));
//指定Web服务的地址
SoapConnector->Property["EndPointURL"] =(LPSTR)(LPCTSTR)WebUrl;
//SoapConnector->Property["EndPointURL"] ="";
//与Web服务连接
hr=SoapConnector->Connect();
if(FAILED(hr)) return "";
//指定Web服务完成的操作
SoapConnector-> Property ["SoapAction"]=_T("http://WebXml.com.cn/getEnCnTwoWayTranslator");
//准备发送消息给Web服务
SoapConnector-> BeginMessage();
// 创建SoapSerializer对象
Serializer.CreateInstance(__uuidof(SoapSerializer));
// 将serializer连接到connector的输入字符串
Serializer->Init(_variant_t((IUnknown*)SoapConnector->InputStream));
// 创建SOAP消息
Serializer-> startEnvelope( "soap", "", "");
Serializer->startBody("");
Serializer-> startElement( "getEnCnTwoWayTranslator", "http://WebXml.com.cn/", "", "soap");
Serializer-> startElement( "Word", "", "", "soap");
Serializer-> writeString((_bstr_t)(LPCTSTR)Words);
Serializer-> endElement();
Serializer-> endElement();
Serializer-> endBody();
Serializer-> endEnvelope();
//消息真正地发给Web服务
hr=SoapConnector->EndMessage();
if(FAILED(hr)) return "";
// 读取响应
Reader.CreateInstance(__uuidof(SoapReader));
上面是我的代码,红色的部分是处问题的地方,我在XP系统里SoapConnector对象可以成功的建立;但是把程序移植到Win2003的系统上,SoapConnetor对象总是建立失败,不知道原因在哪里?请大侠指点迷津!感激不尽!
------解决方案--------------------
创建失败,那报什么错呢?