Загрузка файла из интернета средствами 4GL.

Обсуждение вопросов по разработке программ в среде продуктов копорации "Progress Software"
tokutei
Новичок
Сообщения: 7
Зарегистрирован: 19 сен 2012, 17:35

Загрузка файла из интернета средствами 4GL.

Сообщение tokutei » 25 ноя 2014, 13:53

Здравствуйте. Есть такой вопрос: можно ли стандартными средствами 4GL скачать файл из интернета?
Допустим http://exe.icq.com/icq.exe.

Никак не могу найти хоть что-то полезное по этой теме.

tokutei
Новичок
Сообщения: 7
Зарегистрирован: 19 сен 2012, 17:35

Re: Загрузка файла из интернета средствами 4GL.

Сообщение tokutei » 25 ноя 2014, 17:05

Нашел такой интересный VB-скрипт:

Код: Выделить всё

' Set your settings
strFileURL = "http://exe.icq.com/icq.exe"
strHDLocation = "C:\icq.exe"

' Fetch the file
Set objXMLHTTP = CreateObject("MSXML2.XMLHTTP")

objXMLHTTP.open "GET", strFileURL, false
objXMLHTTP.send()

If objXMLHTTP.Status = 200 Then
Set objADOStream = CreateObject("ADODB.Stream")
objADOStream.Open
objADOStream.Type = 1 'adTypeBinary

objADOStream.Write objXMLHTTP.ResponseBody
objADOStream.Position = 0 'Set the stream position to the start

Set objFSO = Createobject("Scripting.FileSystemObject")
If objFSO.Fileexists(strHDLocation) Then objFSO.DeleteFile strHDLocation
Set objFSO = Nothing

objADOStream.SaveToFile strHDLocation
objADOStream.Close
Set objADOStream = Nothing
End if

Set objXMLHTTP = Nothing


Теперь ломаю голову, как его прикрутить к Progress'у

Аватара пользователя
Arelav
Администратор
Сообщения: 1880
Зарегистрирован: 25 мар 2005, 17:05
Откуда: Progress Technologies
Контактная информация:

Re: Загрузка файла из интернета средствами 4GL.

Сообщение Arelav » 25 ноя 2014, 17:20

Есть такая штука, называется ABL Sockets. Посмотри вот этот пример http://knowledgebase.progress.com/artic ... icle/20011
А также вот эту ветку форума OpenEdge Development на Progress Community https://community.progress.com/communit ... t/506.aspx
Возможно это то, что нужно.

Аватара пользователя
dmi
Старожил
Сообщения: 1523
Зарегистрирован: 27 сен 2001, 03:00
Откуда: Москва
Контактная информация:

Re: Загрузка файла из интернета средствами 4GL.

Сообщение dmi » 26 ноя 2014, 12:04

Версия Progress и платформа?

В самом простом случае (11.4 & Win) это

Код: Выделить всё

USING System.Net.*.

DEF VAR Client  AS WebClient.

Client = NEW WebClient().
Client:DownloadFile("http://exe.icq.com/icq.exe", ".\icq.exe").



На 10.2B проверить не могу пока
/dmi

http://pro4gl.ru - 4gl блог

tokutei
Новичок
Сообщения: 7
Зарегистрирован: 19 сен 2012, 17:35

Re: Загрузка файла из интернета средствами 4GL.

Сообщение tokutei » 26 ноя 2014, 12:24

Спасибо большое всем за помощь.

Версия Progress 10.1B платформа Win. Вариант с сокетами работает как надо. А вот класс WebClient не видит. Попробовал в 11.3 — все сработало. Наверно уже пора обновляться :)

Тема решена.

Аватара пользователя
dmi
Старожил
Сообщения: 1523
Зарегистрирован: 27 сен 2001, 03:00
Откуда: Москва
Контактная информация:

Re: Загрузка файла из интернета средствами 4GL.

Сообщение dmi » 26 ноя 2014, 13:07

tokutei писал(а):Спасибо большое всем за помощь.

Попробовал в 11.3 — все сработало. Наверно уже пора обновляться :)

Тема решена.


Просто я с сокетами в свое время на v9.1D намучился - обновляйся )
/dmi



http://pro4gl.ru - 4gl блог