全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1091
推到 Plurk!
推到 Facebook!

怎样使TImage浏览与保存网络图像?

答題得分者是:ddy
sos_admin
版主


發表:121
回覆:697
積分:768
註冊:2003-07-23

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-09-22 18:17:49 IP:61.155.xxx.xxx 未訂閱
怎样使TImage浏览网络图像? 1、比如将本站的 http://delphi.ktop.com.tw/delphi.gif 直接显示在timage中,不借助中间文件! 2、如果网络具有写的权限,怎样将图像保存到网络上。 不要使用intraweb,这是可以的! 不要使用服务段共享文件夹的方式! 也就是通过http方式上传文件的形式,具体怎样实现还请各位帮忙哦。 谢谢!
TATSU
版主


發表:50
回覆:135
積分:62
註冊:2003-01-16

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-09-23 20:17:20 IP:203.218.xxx.xxx 未訂閱
uses UrlMon ;    function DownLoadInternetFile(Source, Dest : String) : Boolean;
begin
  try
    Result := URLDownloadToFile(nil,PChar(Source),PChar(Dest),0,nil) = 0
  except
    Result := False;
  end;
end;    
試試這一個程式, source 要輸入有效的 url , dest 必須要是一個正確的檔案名稱
sos_admin
版主


發表:121
回覆:697
積分:768
註冊:2003-07-23

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-09-24 07:36:08 IP:61.155.xxx.xxx 未訂閱
多谢 TATSU 兄! 不过您回答并不能满足我的要求[不借助中间文件],也就是直接可以保存为内存流的形式哦!
TATSU
版主


發表:50
回覆:135
積分:62
註冊:2003-01-16

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-09-24 09:45:21 IP:218.102.xxx.xxx 未訂閱
就算是 WEB BROWSER 還不是先下載到 cache folder 再開啟有關圖像檔,只不過系統並沒有告知你檔案位置所在。
sos_admin
版主


發表:121
回覆:697
積分:768
註冊:2003-07-23

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-09-25 16:01:40 IP:61.155.xxx.xxx 未訂閱
如果将这个下载文件直接保存为该怎么做? 谢谢!
ddy
站務副站長


發表:262
回覆:2105
積分:1169
註冊:2002-07-13

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-09-25 16:13:50 IP:61.218.xxx.xxx 未訂閱
sos_admin 兄,下載圖檔放到Stream 如下:
procedure TForm1.Button1Click(Sender: TObject);
var
    tm: TMemoryStream;
begin
    try
        tm := TMemoryStream.Create;
        IdHTTP1.Get('http://delphi.ktop.com.tw/delphi.gif', tm);
        ShowMessage('OK');
    finally
        tm.Free;
    end;
end;
sos_admin
版主


發表:121
回覆:697
積分:768
註冊:2003-07-23

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-09-26 13:52:32 IP:61.155.xxx.xxx 未訂閱
多谢ddy兄的提示,但是怎样再将这个图像保存到服务器上呀? 我是写的一个ocx,通过iis发布。将服务器上的文件内容显示在上面,用于操作过以后可以保存到服务器上的文件。
ddy
站務副站長


發表:262
回覆:2105
積分:1169
註冊:2002-07-13

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-09-29 09:15:39 IP:61.218.xxx.xxx 未訂閱
sos_admin 兄,小弟能力有限,實在是不明白您所描述的用途… 不過小弟猜想…您是想要從用戶端上傳圖檔至server 端,但是不存檔,僅保留在stream 是嗎?    也許可以考慮使用傳參數方式 例: http://www.test.com.tw/tesp.asp?pic1=AACCEFEWCGdEFs124d....... 將上傳圖檔以Baee64編碼,當作參數上傳 server 端的test.asp 裡,用 pic1=Request("pic1") 再行解碼…    但是圖檔以Base64編碼…其size 極大,可能無法加在test.asp?pic1=.....之後 src="http://delphi.ktop.com.tw/loadfile.php?TOPICID=8147403&CC=182217">
sos_admin
版主


發表:121
回覆:697
積分:768
註冊:2003-07-23

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-09-29 10:40:27 IP:61.155.xxx.xxx 未訂閱
是将服务器的文件通过ocx方式,可以在cilent端查看、修改;并且可以保存到远程服务器上,不要通过socket。用http方式! 我是写通用的ocx控件,当然不能用其他方式实现。其实intraweb已经有这样的功能了!
系統時間:2024-05-18 14:35:25
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!