知识大全 用Delphi实现文件下载的几种方法

Posted 文件

篇首语:愿你在孤独难熬的时光里,始终没有辜负那个拼命的自己。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 用Delphi实现文件下载的几种方法相关的知识,希望对你有一定的参考价值。

用Delphi实现文件下载的几种方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

笔者最近开发的系统中需要写一个下载文件的功能 以前用BCB调用API写的很烦琐 忽然想起有一个API就可以搞定了 于是一大早就来搜索 这个API就是UrlDownloadToFile 不仅如此 Delphi的一些控件也可以轻松实现下载 如NMHTTP 指定NMHTTP InputFileMode := ture; 指定Body为本地文件名 指定Get就可以下载了   下面是详细代码 均出自CSDN 我把它们都整理到这儿 让大家方便查阅

uses UrlMon; function DownloadFile(Source Dest: string): Boolean; begin try Result := UrlDownloadToFile(nil PChar(source) PChar(Dest) nil) = ; except Result := False; end; end; if DownloadFile( // borland /delphi zip c:\\kylix zip ) then ShowMessage( Download succesful ) else ShowMessage( Download unsuccesful )

例程

Uses URLMon ShellApi; function DownloadFile(SourceFile DestFile: string): Boolean; begin try Result := UrlDownloadToFile(nil PChar(SourceFile) PChar(DestFile) nil) = ; except Result := False; end; end;

procedure TForm Button Click(Sender: TObject); const // URL Location SourceFile := // google /intl/de/images/home_title gif ; // Where to save the file DestFile := c:\\temp\\google image gif ; begin if DownloadFile(SourceFile DestFile) then begin ShowMessage( Download succesful! ); // Show downloaded image in your browser ShellExecute(Application Handle PChar( open ) PChar(DestFile) PChar( ) nil SW_NORMAL) end else ShowMessage( Error while downloading + SourceFile) end; 加入如下代码

NMHTTP InputFileMode := ture; NMHTTP Body := 本地文件名 ; NMHTTP Header := Head txt ; NMHTTP OutputFileMode := FALSE; NMHTTP ReportLevel := Status_Basic; NMHTTP Proxy := 代理服务器的IP地址 ; NMHTTP ProxyPort := 代理服务器的端口号 ; With NMHTTP HeaderInfo do Begin Cookie := ; LocalMailAddress := ; LocalProgram := ; Referer := ; UserID := 用户名称 ; Password := 用户口令 ; End; NMHTTP Get( // abcdefg /sofare/a zip );

  试试吧 Delphi的目录中有TNMHTTP控件的例子 NT + Win + IE + 你可以用URL Moniker的功能

uses URLMon;

OleCheck(URLDownloadToFile(nil URL Filename nil));

  其中最后一个参数你还可以传入一个IBindStatusCallback的实现以跟踪下载进度或控制中止下载 简单的场合一句话就搞定了

  B URL Moniker封装了大多数URL 而不是像NMHTTP那样封装协议 因此你可以用URLDownloadToFile下载HTTP FTP甚至本地文件和局域网文件 还有其他的custom moniker 比如MSITSTORE(MSDN Library的文档moniker实现)

cha138/Article/program/Delphi/201311/24713

相关参考

知识大全 用bat批量创建文件夹

分别创建等个文件的几种方法创建三个文件的几个方法(几种默认的分割)大家指导下如果你知道更多请跟帖说明谢谢恳请大家批评指正用for建立  复制代码代码如下:  for/l%%ain()domd%%apa

知识大全 SQL Server 2005删除日志文件的几种方法

SQLServer2005删除日志文件的几种方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 将Java程序作成exe文件的几种方法

将Java程序作成exe文件的几种方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一exej

知识大全 SQL Server 2005删除日志文件的几种方法小结

SQLServer2005删除日志文件的几种方法小结  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 动态修改WCF客户端配置文件终结点的地址的几种方法

动态修改WCF客户端配置文件终结点的地址的几种方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 

知识大全 用Delphi实现文件加密压缩技巧

用Delphi实现文件加密压缩技巧  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!引 言  在日常中

知识大全 用Delphi设计循环播放声音文件程序

用Delphi设计循环播放声音文件程序  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &

知识大全 用Delphi实现Windows文件夹管理树

用Delphi实现Windows文件夹管理树  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  摘要

知识大全 用修改文件时间的方法来加密文件

 [摘要]  本文介绍了在Delphi中利用系统函数和WindowsAPI函数配合Delphi中的DataTimePicker组件来获取和修改文件的时间信息的方法以达到软件信息的简单加密  谈到文件加

知识大全 javascript的几种排序方法

  所谓排序就是要整理文件中的记录使之按关键字递增(或递减)次序排列起来其确切定义如下  输入n个记录RR…Rn其相应的关键字分别为KK…Kn  输出RilRi…Rin使得Ki≤Ki≤…≤Kin(或K