Имя: Пароль:
1C
1С v8
InternetExplorer.Application. Как скачать файл по прямой ссылке?
,
0 Denny_dv
 
23.07.13
17:15
Добрый день, форумчане!
Подскажите, пожалуйста, как скачать файл в папку по прямой ссылке из интернета через ком объект InternetExplorer.Application.

  appIE = Новый COMОбъект("InternetExplorer.Application");
  appIE.Visible = Ложь; // не отображаем его (браузер) на экране
  url = "абсолютная ссылка на файл .exe";
  // загружаем страницу из интернета
  appIE.Navigate(url);
  // ждем пока загрузится страница по url
       Пока appIE.readyState < 4 цикл
           i = i + 1;
           
       КонецЦикла;
  // получаем html-страницу как DOM (объектная модель документа)
       htmlDoc=appIE.Document;

Я так понимаю нужно какие то дальше функции приёма или это через другой объект? Спасибо.
1 Jaap Vduul
 
23.07.13
17:32
А объект HTTPСоединение чем не устраивает?
2 Denny_dv
 
25.07.13
14:42
(1)
ПутьСохранения = "C:\Users\ddv\Desktop\";
СоздатьКаталог(ПутьСохранения);
Соединение = Новый HTTPСоединение("http://www.site.ru";);
Соединение.Получить("/111.exe",ПутьСохранения+"111.exe");

Пробовал. Файл создает в каталоге с нулевым размером и выдает ошибку "Ошибка работы с Интернет:  Couldn't resolve host name"
3 Asmody
 
25.07.13
14:54
(2) а если без http:// вводить?
4 Crush
 
25.07.13
15:01
Соединение.Получить("/111.exe"
Слеш в начале точно не нужен
5 Crush
 
25.07.13
15:03
(4) + проверь, что прокси нету
6 Denny_dv
 
25.07.13
15:15
(3) "http" в коде нет. Начинается адрес с "www"
(4) Почему слэш не нужен, если например файл лежит по адресу "http://www.site.ru/111.exe"; Тем не менее убрал - ошибка таже.
(5) Как проверить?
7 Crush
 
25.07.13
15:23
(6) Слеш не нужен - из опыта:)
Залезь в настройки браузера и посмотри через прокси или нет.
Если через прокси, то создавай объект ИнтернетПрокси и пихай его в соединение
8 Denny_dv
 
25.07.13
15:27
(7) Прокси нет. Проверил
9 Denny_dv
 
25.07.13
15:29
Может потому что пытаюсь скачать именно exe файл? Он бинарный, может другие методики
10 Crush
 
25.07.13
15:30
Попробуй картинку с любого ресурса скачать
11 Crush
 
25.07.13
15:39
Этот код без прокси такую же ошибку давал как и у тебя. С прокси заработал
    Прокси    = Новый ИнтернетПрокси(Истина);
    Прокси.Установить("http","сюда вписать адрес прокси");
    Соединение        = Новый HTTPСоединение("http://www.forum.mista.ru",80,,,Прокси);
    ИмяВремФайла    = ПолучитьИмяВременногоФайла("gif");
    Соединение.Получить("css/empty.gif",ИмяВремФайла);
    ЗапуститьПриложение(ИмяВремФайла);


Проверь повнимательней, скорее всего ты через прокси сидишь
12 Crush
 
25.07.13
15:40
Умный форум переделал строку

Соединение=Новый HTTPСоединение("http://www.forum.mista.ru",80,,,Прокси);
13 Denny_dv
 
25.07.13
16:09
(11) Картинку только что скачал с яндекса. Сначала писал что файл не найден. Убрал в адресе "www" - скачалось.

   ПутьСохранения = "C:\Users\d_dutov\Desktop\HRM\";
    СоздатьКаталог(ПутьСохранения);
    Соединение = Новый HTTPСоединение("f.mypage.ru",,,,,Ложь);
    Соединение.Получить("d1f29626032813638a6dcfebbbbd7465_43914164501ce2275993843badf0c673.jpg",ПутьСохранения+"111.jpg");
14 Denny_dv
 
25.07.13
16:15
(11) Победили)) Теперь и exe скачался. Тоже просто в адресе надо было убрать "www". Кто бы мог подумать)) Спасибо!