Доброго дня. Обнаружил, что мой скрипт работает с файлом несколько месячной давности, хотя, по идее, должен работать всегда с актуальным файлом. Дата файла в кеше компьютера совпадает с датой файла, с которой работает скрипт. т.е. файл был скачан компьютером с себя же Подскажите пожалуйста, как скачивать файл игнорируя кеш?
Информация о системе: Office 2003 Win 7
Текст скачивания файла (имя сайта и файла изменены)
Код
Set XMLHTTP = CreateObject("Microsoft.XMLHTTP";)
XMLHTTP.Open "GET", Replace("[URL=http://site.ru/files/file.zip]http://site.ru/files/file.zip[/URL]", "\", "/";), "False"
XMLHTTP.send
If XMLHTTP.statustext = "OK" Then
Set ADOStream = CreateObject("ADODB.Stream";)
ADOStream.Type = 1: ADOStream.Open
ADOStream.Write XMLHTTP.responseBody
ADOStream.SaveToFile "C:\Users\MyUser\Desktop\zagotovka\1\file.zip", 2
ADOStream.Close: Set ADOStream = Nothing
DownloadFile = True
Else
MsgBox "Не удаётся скачать файл" & XMLHTTP.statustext
End If
Set XMLHTTP = Nothing
т.е. я использовал пример этот http://excelvba.ru/code/DownloadFile Значения СсылкаНаФайл$ = ПутьДляСохранения$ = Задал необходимые Файл скачивается январский, хотя на сайте есть сегодняшний
Что я попробовал: Взял этот пример и вставил его в новый модуль т.е. никакой другой информации в модуле не было Качает гад январский файл всё равно... :(
Пример вывешиваю тут, чтобы вам туда не ходить
Код
Sub ПримерИспользования()
СсылкаНаФайл$ = "http://excelvba.ru/sites/default/files/3.jpg"
ПутьДляСохранения$ = "C:\ПЖиВ.jpg"
' скачиваем файл из интернета
DownloadFile СсылкаНаФайл$, ПутьДляСохранения$
' открываем скачанный файл
CreateObject("wscript.shell").Run """" & ПутьДляСохранения$ & """"
End Sub
Function DownloadFile(ByVal URL$, ByVal LocalPath$) As Boolean
' Функция скачивает файл по ссылке URL$
' и сохраняет его под именем LocalPath$
Dim XMLHTTP, ADOStream, FileName
On Error Resume Next: Kill LocalPath$
Set XMLHTTP = CreateObject("Microsoft.XMLHTTP")
XMLHTTP.Open "GET", Replace(URL$, "\", "/"), "False"
XMLHTTP.send
If XMLHTTP.statustext = "OK" Then
Set ADOStream = CreateObject("ADODB.Stream")
ADOStream.Type = 1: ADOStream.Open
ADOStream.Write XMLHTTP.responseBody
ADOStream.SaveToFile LocalPath$, 2
ADOStream.Close: Set ADOStream = Nothing
DownloadFile = True
Else
'MsgBox "Не удаётся скачать файл " & XMLHTTP.statustext
End If
Set XMLHTTP = Nothing
End Function
erros, у Вас сообщение - сплошной error Уберите лишние пустые строки Код оформляется кнопкой <...> Длинный листинг лучше под спойлер (кнопка SP) тренируйтесь.
Зашел в Internet Explorer 10, Удалил Временные файлы интернета и веб сайтов Теперь файл скачивается сегодняшний Но завтра то тое будет скачиваться с кеша, т.е. 9 апреля скачается от 8 апреля...
Что бы такого умного придумать, чтобы обходить эту проблему?