在vc6.0中用Invoke调用webservice,如何实现多个返回值
- C/C++ code
DISPPARAMS dispparams2;//参数应该与调用函数的参数相反 dispparams2.cArgs = 2; dispparams2.cNamedArgs = 0; dispparams2.rgdispidNamedArgs = NULL; CString strItem = ""; VARIANTARG params2[2]; VariantInit(¶ms2[0]); params2[0].vt = VT_BSTR; V_VT(¶ms2[0]) = VT_BSTR; V_BSTR(¶ms2[0]) = strItem.AllocSysString(); VariantInit(¶ms2[1]); params2[1].vt = VT_INT; V_VT(¶ms2[1]) = VT_INT; V_INT(¶ms2[1]) = Item_ID; dispparams2.rgvarg = params2; VARIANT result2; VariantInit(&result2); hr = soapClient->Invoke(dispid, IID_NULL, LOCALE_SYSTEM_DEFAULT, DISPATCH_METHOD,&dispparams2,&result2,NULL, NULL);
上面的代码传入两个参数,但是调用的方法需要返回三个值,怎么返回啊?我怎么获得这三个值呢?
[解决办法]
返回XML等格式,然后解析结果
[解决办法]
查看webservice返回的值是以什么形式组织的,解析该返回值 试试