Имя: Пароль:
1C
1С v8
ADODB.Stream и 1С 8.2
0 alexsandrinia
 
03.12.15
10:53
С сайта пытаюсь сохранить фото, делаю вот так:    


ИмяФайлаКартинки = "C:\Users\20.png";

            WinHttp = Новый COMОбъект("WinHttp.WinHttpRequest.5.1");
            WinHttp.SetTimeouts(10000, 10000, 10000, 10000);
            БазовыйУРЛ = Путь;
            WinHttp.Open("GET", Путь, False);
            WinHttp.Send();

            Stream = Новый COMОбъект("ADODB.Stream");
            Stream.Type = 1;
            Stream.Mode = 3;
            Stream.Open();
            Stream.Write(WinHttp.ResponseBody);

            Stream.SaveToFile(ИмяФайлаКартинки, 2);
            Stream.Close();


            Картинка = Новый Картинка(ИмяФайлаКартинки);
            ЭлементыФормы.Иконка.Картинка = Картинка;

Картинка загружается на форму, но выходит ошибка
Ошибка при вызове метода контекста (Write)
            Stream.Write(WinHttp.ResponseBody);
по причине:
Произошла исключительная ситуация (ADODB.Stream): Аргументы имеют неверный тип, выходят за пределы допустимого диапазона или вступают в конфликт друг с другом.

где и что не так?
1 vde69
 
03.12.15
11:00
2 vde69
 
03.12.15
11:01
тип должен быть Variant
3 alexsandrinia
 
03.12.15
11:04
(2) как его установить?
4 Patriot1C
 
03.12.15
11:30
Ошибку получения файла как отрабатываешь?
5 Patriot1C
 
03.12.15
11:35
Я бы изменил на Open("GET", Путь, 0);
6 alexsandrinia
 
03.12.15
11:46
(5) та же ошибка выходит и картинка не отображается.
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.