Страница: 1 |
Народ, помогите!!! Имеется: файл закачанный IE из сети (можно через объект, можно через winapi ShellExecute) Требуется: Сохранить этот файл на диск в указанном месте под указанным именем. (Естественно, используя VB). Поясняю, Т.е. требуется программно выполнить вместо юзера заполнение диалога Saveas и вызвать функцию его обработки, заданную по умолчанию. Я подозреваю, что это может быть OFNHookProc, но пока не получается... PS. элемент управления Inet лучше не использовать... Конечно, ежели не удастся в IE, тогда придется, но там надо тогда писать заполнение полей для ввода пароля и не факт, что не потребуется что-то еще, типа обработки cookie...и т.п. PPS. Да и в общем контексте было бы неплохо узнать, как это все же сделать, ибо может потребоваться и для других приложений обходить таким образом диалоги....
Самостоятельно нашел следующее свойство IE: .document.documentElement.outerHTML, где содержится текст странички. Я закачивал по крайней мере 500Кб таким образом. Единственно, что вроде комментарии съедаются Остаётся выяснить как работать с фреймами и чем отличается outerHTML от innerHTML Короче есть еще вот такай фишка. Не проверял на файлах, но вроде как может заработать, попробуй: Public Event ErrorDownload(FromPathName As String, ToPathName As String) Public Function DownloadFile(FromPathName As String, ToPathName As String) As Boolean Спасибо, ежели мой вариант где-то заглючит, есть смысл попробовать Страница: 1 |
Вопрос: Как сохранить файл из IE на диск?
Добавлено: 13.08.03 11:53
Автор вопроса: AMVAS
Ответы
Всего ответов: 3
Номер ответа: 1
Автор ответа:
AMVAS
Вопросов: 2
Ответов: 2
Профиль | | #1
Добавлено: 14.08.03 13:51
Номер ответа: 2
Автор ответа:
serv
ICQ: 165774570
Вопросов: 0
Ответов: 2
Профиль | | #2
Добавлено: 14.08.03 13:53
Public Event DownloadComplete(FromPathName As String, ToPathName As String)
DoEvents
If URLDownloadToFile(0, FromPathName, ToPathName, 0, 0) = 0 Then
DoEvents
DownloadFile = True
RaiseEvent DownloadComplete(FromPathName, ToPathName)
DoEvents
If FileLen(ToPathName) < 2300 Then DownloadFile = False
Else
DoEvents
DownloadFile = False
RaiseEvent ErrorDownload(FromPathName, ToPathName)
End If
End Function
Номер ответа: 3
Автор ответа:
AMVAS
Вопросов: 2
Ответов: 2
Профиль | | #3
Добавлено: 16.08.03 15:27