如何防止URLDownloadToFile从缓存中检索?

时间:2020-03-05 18:56:46  来源:igfitidea点击:

我正在使用URLDownloadToFile从网站检索文件。后续调用返回原始文件,而不是更新的版本。我假设它正在检索缓存的版本。

解决方案

回答

在调用URLDownloadToFile之前,请使用相同的URL调用DeleteUrlCacheEntry。
我们将需要针对Wininet.lib进行链接

回答

我们能否在URL的末尾添加一个无害的查询参数?

https://stackoverflow.com/?CacheBuster=1020am

回答

是的,默认情况下,它正在提取文件的缓存版本。为了完全避免缓存文件,请在lpfnCB中传递IBindStatusCallback对象
URLDownloadToFile()的参数。在通过grfBINDF参数返回的值中,在已实现的IBindStatusCallback :: GetBindInfo()方法中,包括BINDF_GETNEWESTVERSION标志,以及可选的BINDF_NOWRITECACHE标志。如果要更新缓存文件(如果存在)而不是skippe,请改为指定BINDF_RESYNCHRONIZE标志。