解决URLDownloadToFile缓存问题的两种方法
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
{
// 下载失败
}
分享到:
相关推荐
URLDownloadToFile被误杀解决办法 URLDownloadToFile总是被杀毒软件误报病毒,本人采用的解决办法是:将api声明中的“urlmon”改为“myurlmon”,源码见附件
URLDownloadToFile是一个异步的下载方法,它允许在后台线程中执行下载操作,从而不会阻塞应用程序的主界面。这样用户可以继续进行其他操作,提高了用户体验。描述中提到的“使用线程调用”,就是指通过创建一个新的...
在Windows编程环境中,有时我们需要实现一个简单的文件下载功能,这时可以使用`URLDownloadToFile` API函数。这个函数是Microsoft的Internet Explorer组件提供的,允许我们从指定的URL直接下载文件到本地磁盘。在这...
5. **进度条显示**:`URLDownloadToFile`函数本身并不提供进度反馈,但可以通过其他方法实现。例如,可以利用`WinInet`库的`InternetSetStatusCallback`函数设置状态回调,或者使用第三方库如`libcurl`,它们通常...
在VB(Visual Basic)编程中,`URLDownloadToFile`是一个非常实用的API函数,它允许开发者从指定的URL下载文件到本地系统。这个函数属于Windows操作系统内置的`Wininet.dll`库,它提供了网络访问的功能,包括HTTP、...
总之,VC++通过URLDownloadToFile函数实现文件下载是一种便捷的方法,尤其适合小型项目。然而,对于大型文件或需要高级功能(如多线程下载、断点续传)的应用,可能需要考虑使用更强大的下载库或自行编写网络下载...
请注意,这个示例没有涉及错误处理和线程安全问题,实际项目中应考虑这些因素以确保程序的健壮性。同时,如果下载文件较大,可能需要考虑分块下载和断点续传功能。此外,Windows的Internet API并不是现代下载管理的...
当`URLDownloadToFile`执行时,它会调用实现了`IBindStatusCallback`接口的对象的方法,传递下载进度、错误信息等。通过实现这个接口,我们可以获取到详细的下载进度信息,进而显示在用户界面上,比如创建进度条或...
Qt 案例 使用QNetworkReply或URLDownloadToFile两种方式下载http资源到本地电脑,同时实现显示资源的下载速度,剩余时间,下载进度,以及暂停下载,停止后重新继续下载等相关功能。用于对比 使用QNetworkReply(Qt)与...
`URLDownloadToFile`的使用方法: 1. 引用库:首先,我们需要在VB项目中引用`Microsoft Internet Controls`库,这通常在工程属性的“引用”选项卡中完成。 2. 函数声明:由于VB默认不包含`URLDownloadToFile`的定义...
在Windows编程环境中,URLDownloadToFile函数是一个非常实用的API,用于从互联网上下载文件到本地。这个函数是Microsoft WinINet API的一部分,适用于各种类型的Windows应用程序,包括MFC(Microsoft Foundation ...
总结,`URLDownloadToFile`是Windows编程中一种便捷的文件下载方法,它适合快速、简单的下载任务。虽然它不直接支持进度显示,但通过结合其他技术,我们可以实现定制化的下载体验。在实际项目中,理解这个函数的工作...
3. URLDownloadToFile的使用方法,包括参数设置和错误处理。 4. 示例代码,展示如何创建FileDownLoadThread实例并开始下载。 5. 可能还包括一些注释和解释,帮助理解代码的工作原理。 总的来说,这个压缩包中的内容...
URLDownloadToFile函数下载远程文件,可以实现断点续传,通过progressbar也可以实现进度条显示,下载百分比,下载速度的显示,另外也包含读取,写入ini文件的源码..通过setup factory7的文件打包,实现了通过网络更新本地...
在VB(Visual Basic)编程环境中,`URLDownloadToFile`函数是一个非常实用的API,用于从互联网上下载文件到本地。这个函数是Windows操作系统内置的一部分,属于Wininet库,因此在VB程序中使用它时需要引入相关引用。...
这两个方法会在下载过程中被调用,允许你获取并显示下载进度。例如,在`OnProgress`方法中,你可以根据`ulProgress`和`ulProgressMax`参数计算出当前下载的百分比,并更新用户界面。 ```cpp STDMETHODIMP ...
内容索引:VC/C++源码,网络相关,URLDownloadToFile VC++使用URLDownloadToFile下载文件程序实例,URLDownloadToFile的使用是相当广泛的,不过还是有不少的VC新手朋友对其用法不太了解,通过这个实例 ,希望能帮助你...
本文以C与MFC的两个实例详述了取外网IP的两种实现方法,具体实现代码如下: MFC语言实现获取外网IP: # include # include # pragma comment(lib,URLMON.lib) void main() { URLDownloadToFile(NULL,...
这个是一个类似QQ一样,以前的QQ是群和好友的切换是滑动的,这个也是差不多类似的,就是滑动上去然后滑动的下来,很简单但是很有实用性的