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

使用idhttp,請問該如何儲存或打開server的response

答題得分者是:RaynorPao
enu
中階會員


發表:36
回覆:93
積分:55
註冊:2003-10-22

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-11-02 22:10:05 IP:220.142.xxx.xxx 未訂閱
小弟參考了討論區內的相關資料後利用idhttp元件發送檔案至server端,並且server也回應了相關的檔案,問題是小弟該如何將回應的檔案儲存或打開呢? 部份相關程式碼如下: TFileStream *BStream; IdHTTP1->HandleRedirects=true; TFileStream *FStream=new TFileStream(OpenDialog1->FileName,fmOpenRead); IdHTTP1->Post("URL: string",FStream,BStream); 請問小弟該如何將BStream儲存或打開呢?懇請各位高手指教一下,謝謝!
RaynorPao
版主


發表:139
回覆:3622
積分:7025
註冊:2002-08-12

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-11-02 23:42:12 IP:61.221.xxx.xxx 未訂閱
引言: 小弟參考了討論區內的相關資料後利用idhttp元件發送檔案至server端,並且server也回應了相關的檔案,問題是小弟該如何將回應的檔案儲存或打開呢? 部份相關程式碼如下: TFileStream *BStream; IdHTTP1->HandleRedirects=true; TFileStream *FStream=new TFileStream(OpenDialog1->FileName,fmOpenRead); IdHTTP1->Post("URL: string",FStream,BStream); 請問小弟該如何將BStream儲存或打開呢?懇請各位高手指教一下,謝謝!
enu 你好: 請參考以下的連結文章 (有完整的範例 BCB/Delphi)
------
-- 若您已經得到滿意的答覆,請適時結案!! --
-- 欲知前世因,今生受者是;欲知來世果,今生做者是 --
-- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 --
enu
中階會員


發表:36
回覆:93
積分:55
註冊:2003-10-22

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-11-03 11:02:27 IP:163.27.xxx.xxx 未訂閱
謝謝RaynorPao先生,我去看了相關的連結了。 不好意思,可能問題描述的不好, 現下server已可正確回應一個binary檔(也就是BStream), 請問我要如何才能將BStream存檔或打開呢? 不好意思,小弟才疏學淺,可以的話,請用bcb指導。 感謝!
RaynorPao
版主


發表:139
回覆:3622
積分:7025
註冊:2002-08-12

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-11-04 23:05:32 IP:61.221.xxx.xxx 未訂閱
引言: 謝謝RaynorPao先生,我去看了相關的連結了。 不好意思,可能問題描述的不好, 現下server已可正確回應一個binary檔(也就是BStream), 請問我要如何才能將BStream存檔或打開呢? 不好意思,小弟才疏學淺,可以的話,請用bcb指導。 感謝!
enu 你好: 把 BStream 放在 TMemoryStream 裡面,不就可以存檔了嗎?? < class="code"> TMemoryStream *ms=new TMemoryStream; ms->Size=BStream->Size; ms->LoadFromStream(BStream); ms->SaveToFile("test.dat"); delete ms; -- Enjoy Researching & Developing --
------
-- 若您已經得到滿意的答覆,請適時結案!! --
-- 欲知前世因,今生受者是;欲知來世果,今生做者是 --
-- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 --
enu
中階會員


發表:36
回覆:93
積分:55
註冊:2003-10-22

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-11-06 00:48:02 IP:220.142.xxx.xxx 未訂閱
謝謝RaynorPao先生,我試著使用您的方式去try,結果如下: 請問這是什麼問題呢?該如何解決?再次感謝您熱心指導! --------------------------- Debugger Exception Notification --------------------------- Project Project1.exe raised exception class EAccessViolation with message 'Access violation at address 4002D592 in module 'rtl60.bpl'. Read of address 00000000'. Process stopped. Use Step or Run to continue. --------------------------- OK Help ---------------------------
RaynorPao
版主


發表:139
回覆:3622
積分:7025
註冊:2002-08-12

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-11-06 00:56:32 IP:61.221.xxx.xxx 未訂閱
引言: 謝謝RaynorPao先生,我試著使用您的方式去try,結果如下: 請問這是什麼問題呢?該如何解決?再次感謝您熱心指導! --------------------------- Debugger Exception Notification --------------------------- Project Project1.exe raised exception class EAccessViolation with message 'Access violation at address 4002D592 in module 'rtl60.bpl'. Read of address 00000000'. Process stopped. Use Step or Run to continue. --------------------------- OK Help ---------------------------
enu 你好: 建議你先利用 BCB 中的單步執行,檢查這個錯誤訊息是執行到哪一行程式碼發 生的?? < class="code"> TMemoryStream *ms=new TMemoryStream; IdHTTP1->HandleRedirects=true; TFileStream *FStream=new TFileStream(OpenDialog1->FileName,fmOpenRead); IdHTTP1->Post("URL: string", FStream, ms); ms->SaveToFile("test.dat"); delete FStream; delete ms; -- Enjoy Researching & Developing --
------
-- 若您已經得到滿意的答覆,請適時結案!! --
-- 欲知前世因,今生受者是;欲知來世果,今生做者是 --
-- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 --
enu
中階會員


發表:36
回覆:93
積分:55
註冊:2003-10-22

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-11-07 09:01:00 IP:163.27.xxx.xxx 未訂閱
再次感謝RaynorPao先生, 經由您熱心指導, 我的問題獲得解決了。 謝謝!
系統時間:2024-05-05 5:40:55
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!