線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2744
推到 Plurk!
推到 Facebook!

BCB中调用SOAP和DynamicArray

 
laila
一般會員


發表:2
回覆:3
積分:1
註冊:2006-08-10

發送簡訊給我
#1 引用回覆 回覆 發表時間:2006-11-23 21:18:40 IP:130.226.xxx.xxx 訂閱
我调用一个SOAP服务,但得到的结果总为空.不知道是哪里出错了.恳请各位指点.十分感谢

WSDLLocation:http://www.adl.dk/xws/AdlGazeTalk?WSDL

NS_AdlGazeTalk::_di_SearchPortType SearchPort; // typedef DynamicArray ArrayOfdk_kb_dup_adlGazeTalk_Author;

void __fastcall TForm1::GetAuthorByNameClick(TObject *Sender)
{
SearchPort = GetSearchPortType();
AuthorList = SearchPort->getAuthorsByName("T"); // 结果显示不对
Memo1->Lines->Add("Birth: " IntToStr(AuthorList[i].birthYear));
Memo1->Lines->Add("Death: " IntToStr(AuthorList[i].deathYear));
Memo1->Lines->Add("Facts: " AuthorList[i].facts );
}
}
laila
一般會員


發表:2
回覆:3
積分:1
註冊:2006-08-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2006-11-28 00:16:55 IP:130.226.xxx.xxx 訂閱
把AuthorList = SearchPort->getAuthorsByName("T");替换为
(SearchPort->getAuthorsByName("T")).Copy(AuthorList);
后得到错误:
Classes with properties cant be copied by value
于是overload =,但又得到错误:
Vcl style classes must be constructed by operator new

我觉得应该不会这么复杂...SOAP返回一个complex object应该是
很常见的.请多指教...
laila
一般會員


發表:2
回覆:3
積分:1
註冊:2006-08-10

發送簡訊給我
#3 引用回覆 回覆 發表時間:2006-12-05 21:23:59 IP:130.226.xxx.xxx 訂閱
Problem solved: 

When import the WSDL, the code generated by BCB is wrong. return type should be a pointer.
系統時間:2024-03-28 17:35:53
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!