Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/FTPGetFile и IE11 - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » FTPGetFile и IE11 (Макросы/Sub)
FTPGetFile и IE11
akyakovlev Дата: Пятница, 27.04.2018, 13:20 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Всем добрый день!
Имеется вот такой рабочий (до некоторых пор) код:

[vba]
Код
hINetSession = InternetOpen("MyFTPClient", 0, vbNullString, vbNullString, 0)
    hSession = InternetConnect(hINetSession, "ccpds002", "21", "***", "***", 1, &H8000000, 0)
    If hSession = 0 Then
        MsgBox ("Ошибка подключения к ccpds002")
        Exit Sub
    End If
    
    If FtpGetFile(hSession, "/opt/avaya/pds/lists/" & InboundNumber & "tran.stat", "L:\UVPZ\Архив\LevelService\" & InboundNumber & "tran.stat", False, 0, FTP_TRANSFER_TYPE_BINARY, 0) = False Then
        Call InternetCloseHandle(hSession)
        Call InternetCloseHandle(hINetSession)
        MsgBox ("Загрузить " & InboundNumber & "tran.stat не удалось")
        Exit Sub
    End If
[/vba]

Файл с ФТП (доступ к которому в Passive mode) качается неоднократно за день (данные в файле постоянно обновляются).

С некоторых пор у нас обновился IE до 11 версии и теперь при вызове макроса файл кэшируется в Temporary Internet Files, при последующих попытках скачивания файл берется не с ФТП, а из кэша.

До установки IE11 все работало как часы - файл каждый раз грузился свежий. Код не менялся.

Вопрос к знающим людям - как можно элегантно решить проблему кэширования? Чтобы каждый раз забирался свежий файл с ФТП.

Попытки использовать INTERNET_FLAG_RELOAD не принесли успехов, выходит ошибка скачивания.

На данный момент умнее чем это я не придумал:

[vba]
Код
Shell "cmd.exe /c del /f /s /q ""%USERPROFILE%\AppData\Local\Microsoft\Windows\Temporary Internet Files\*.*""", vbNormalFocus
[/vba]
 
Ответить
СообщениеВсем добрый день!
Имеется вот такой рабочий (до некоторых пор) код:

[vba]
Код
hINetSession = InternetOpen("MyFTPClient", 0, vbNullString, vbNullString, 0)
    hSession = InternetConnect(hINetSession, "ccpds002", "21", "***", "***", 1, &H8000000, 0)
    If hSession = 0 Then
        MsgBox ("Ошибка подключения к ccpds002")
        Exit Sub
    End If
    
    If FtpGetFile(hSession, "/opt/avaya/pds/lists/" & InboundNumber & "tran.stat", "L:\UVPZ\Архив\LevelService\" & InboundNumber & "tran.stat", False, 0, FTP_TRANSFER_TYPE_BINARY, 0) = False Then
        Call InternetCloseHandle(hSession)
        Call InternetCloseHandle(hINetSession)
        MsgBox ("Загрузить " & InboundNumber & "tran.stat не удалось")
        Exit Sub
    End If
[/vba]

Файл с ФТП (доступ к которому в Passive mode) качается неоднократно за день (данные в файле постоянно обновляются).

С некоторых пор у нас обновился IE до 11 версии и теперь при вызове макроса файл кэшируется в Temporary Internet Files, при последующих попытках скачивания файл берется не с ФТП, а из кэша.

До установки IE11 все работало как часы - файл каждый раз грузился свежий. Код не менялся.

Вопрос к знающим людям - как можно элегантно решить проблему кэширования? Чтобы каждый раз забирался свежий файл с ФТП.

Попытки использовать INTERNET_FLAG_RELOAD не принесли успехов, выходит ошибка скачивания.

На данный момент умнее чем это я не придумал:

[vba]
Код
Shell "cmd.exe /c del /f /s /q ""%USERPROFILE%\AppData\Local\Microsoft\Windows\Temporary Internet Files\*.*""", vbNormalFocus
[/vba]

Автор - akyakovlev
Дата добавления - 27.04.2018 в 13:20
Мир MS Excel » Вопросы и решения » Вопросы по VBA » FTPGetFile и IE11 (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс цитирования
© 2010-2018 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!