Delphi 编程,从网络上下载文件,我一般用 UrlDownloadToFile API函数,简单,实用。

function DownloadFile(const strURL, strDownFileName: string): Boolean;
begin   try   Result := UrlDownloadToFile(nil, PChar(strURL), PChar(strDownFileName), 0, nil) = 0;   except   Result := False;   end;
end;

但是昨天,测试给我反映,有的客户那里,没有换成更改后的新的图片,还是老的图片。
一开始我还以为是权限的问题,没有目录读写权限造成的。
在客户的电脑上折腾了一番,依然没能找到问题所在。
没有办法,只好一步一步写日志输出。
竟然发现 UrlDownloadToFile 根本就没有从网络上将文件下载下来。使用的是缓存里面的文件。
还是老老实实用 IDHTTP 下载吧。

procedure DownloadFile(const strURL, strDownFileName:String);
var mmfs : TFileStream;
begin mmfs := TFileStream.Create(strDownFileName,fmCreate); tryIdHTTP.Get(strURL,mmfs); finallymmfs.Free;end;
end;

这个函数有个明显的缺点,就是不知道下载的状态,是成功了,还是失败了。这个就留作课后作业。大家自己想办法了。(当然还有个缺陷就是需要一个 IDHTTP 控件)

记录一下。提醒大家注意。

从网络上下载文件的两种方式相关推荐

  1. django + python上传文件的两种方式

    突然心血来潮,研究了下django+python上传文件的两种方式. 第一:直接采用文件读写的方式上传 1. settings.py文件中设置文件的存放路径和文件读取路径 MEDIA_ROOT = o ...

  2. Android之从网络上获取图片的两种方式讲解:thread+handle和AsyncTask方式

    从网络上获取图片是一个比较耗时的操作,放在主线程会导致阻塞主线程,响应超时,所以我们不能把它放在主线程里操作,必须放在一个子线程里,我打算采用两种方式去实现.1.采用thread去获取图片,获取到后通 ...

  3. springboot Java实现多文件的zip压缩操作 + 通过浏览器下载文件的两种方式

    注只适配utf-8的场景,待完善! 压缩为zip文件 通过java程序输出文件 /*** 功能:压缩多个文件成一个zip文件* @param srcfile:源文件列表* @param zipfile ...

  4. angualr2 下载文件的两种方式

    根据小编我目前的了解,angualr2中可以使用一下两种方式导出文件 第一种 export(){let url ="自己下载文件的路径";// var objectUrl = UR ...

  5. Android从网络上获取图片的两种方式

    1,获得图片的bitmap格式 参见以前写的,这种方式是使用Url连接,位图工厂直接从连接解析 package cn.com.hh.http;import java.io.IOException; i ...

  6. LayUI upload上传组件上传文件的两种方式(手动上传、自动上传)

    1 手动上传 上传文件分为两步,第一步选择文件,第二步上传文件. HTML代码: <input type='button' id='selectFile' value='选择文件'> &l ...

  7. WebUploader 上传文件的两种方式(手动上传,自动上传)

    1 手动上传 上传文件分为两步,第一步选择文件,第二步上传文件. HTML代码: <input type='button' id='selectFile' value='选择文件'> &l ...

  8. vue前端实现上传文件的两种方式

    1.使用form表单的形式 第一种方式就是使用FormData的方式进行上传 html代码: <el-form :model="upform" :rules="up ...

  9. flask中使用FileField上传文件的两种方式+前端页面上传文件(flask三种上传文件方式)

    文章目录 上传文件方式一: 1.index.html文件: 2.主文件main.py: 上传文件方式二: 1.index2.html文件: 2.main.py文件: 上传文件方式三: 1.index3 ...

最新文章

  1. 200 万年薪,却招不到清华姚班毕业生!能上姚班的都是什么人?
  2. 黑科技揭秘 | 阿里云“天空物联网”连接范围如何达到700平方公里
  3. jquery extend函数
  4. ReactNative生成android平台的bundle文件命令
  5. 深入理解分布式技术 - ServiceMesh 服务网格
  6. 《STL源码剖析》--知识点
  7. c#图片上绘制半透明矩形
  8. 阿里技术 2019 年度热文 Top10 出炉,你错过哪些?
  9. 每日三道前端面试题--vue 第二弹
  10. 开发者需要了解的nodejs中require的机制
  11. MySQL字符串拼接(函数)
  12. 常用公差配合表图_机械密封零件的公差配合与技术要求
  13. IOS开发之——音乐播放器-功能封装(03)
  14. iptables端口复用
  15. python文件名和类名需要一致吗_Python:类名与文件/模块名相同会导致继承问题?...
  16. uniapp 如何生成二维码
  17. Mac软件安装包和问题解决方案
  18. 铁电存储器这样应对充电桩存储痛点
  19. 2022年金属非金属矿山(地下矿山)安全管理人员特种作业证考试题库模拟考试平台操作
  20. P2P在IPTV中解决数据服务器传输瓶颈

热门文章

  1. ipfs分布式存储能否拯救互联网杀熟
  2. java定义一个方法计算三角形,长方形,圆形面积和周长
  3. [数学理论]最大熵模型
  4. TextPad等编译器找不到或无法加载主类
  5. 计算机象棋思维原理,这些象棋原理只有象棋大师才懂,几分钟就能学会
  6. 解决Could not find method xxx for arguments问题
  7. TTL肖特基触发器是什么?
  8. 计算机python教程_Python 如何入门?附Python教程下载
  9. topm java cpu3.3_快讯:TOPM 3-0 XQ,TOPM强势压迫,势如破竹喜获三连胜
  10. 作为老板,林纳斯·托瓦兹有多糟糕?