现在的位置: 首页 > 综合 > 正文

解决URLDownloadToFile缓存问题的两种方法

2013年05月30日 ⁄ 综合 ⁄ 共 818字 ⁄ 字号 评论关闭

URLDownloadToFile下载文件前先在本地的缓存中查找此文件
如果缓存有则不会再去网上抓最新的文件,所以我们还要解决
URLDownloadToFile缓存的问题。

 

方法 1:

我们可以对URL进行改动,让它每次访问不同的URL但指向相同的页面,
例如在URL结尾添加一些无意义
的参数:"http://www.dtapp.cn?abc=1

"

里的 ?abc=1 可以随机实现,下次下载则改成  ?abc=2 因为URL不同,所以不会在缓存中找到。
最后程序改成:

/********************************************************/
 int
nRand = time(NULL); // 用时间作为随机数

 CString szUrl;
 szUrl.Format("http://www.dtapp.cn?abc=%d

",
nRand); // 生成随机URL

 CString szFileName = "C://dtapp.txt";

 if (S_OK == URLDownloadToFile(NULL, szUrl, szFileName, NULL,NULL))
 {
 
// 下载成功
 }
 else
 {
  // 下载失败
 }

 

方法 2:

使用DeleteUrlCacheEntry清理缓存后再使用URLDownloadToFile下载文件。

/********************************************************/
CString
szUrl = "http://www.dtapp.cn

";

DeleteUrlCacheEntry (szUrl); // 清理缓存
CString szFileName =
"C://dtapp.txt";

 if (S_OK == URLDownloadToFile(NULL, szUrl, szFileName, NULL,NULL))
 {
 
// 下载成功
 }
 else
 {
  // 下载失败
 }

抱歉!评论已关闭.