|
Переделываю обработку с 7-ки, ошибка- Scr = СоздатьОбъект("MSScriptControl.ScriptControl") |
☑ |
0
SkillUp
15.07.20
✎
12:08
|
Здравствуйте, переделываю обрабоку с 7-ки на 8-ку (обычные формы), ошибка на строке Scr = СоздатьОбъект("MSScriptControl.ScriptControl"). Переделываю на Scr = Новый COMОбъект("MSScriptControl.ScriptControl"), так же ошибка :{ВнешняяОбработка.ОтгрузкаКонстар.Форма.Форма.Форма(23)}: Ошибка при вызове конструктора (COMОбъект)
Scr = Новый COMОбъект("MSScriptControl.ScriptControl");
по причине:
-2147024891(0x80070005): Отказано в доступе.)
Сам код:
WinHttp = Новый COMОбъект("WinHttp.WinHttpRequest.5.1");
WinHttp.Open("GET", СсылкаНаФайлDropbox, 0);
WinHttp.Send();
Если WinHttp.Status = 200 Тогда
Scr = СоздатьОбъект("MSScriptControl.ScriptControl");
Scr.Language = "vbscript";
ТекстМодуля = "
|Sub SaveToFile(ByRef FileName, ByRef WinHttp)
| Set Stream = CreateObject(""ADODB.Stream"")
| Stream.Type = 1
| Stream.Mode = 3
| Stream.Open
| Stream.Write WinHttp.responseBody
| Stream.SaveToFile FileName, 2
| Stream.Close
|End Sub";
Scr.AddCode(ТекстМодуля);
Scr.Run("SaveToFile",ИмяФ, WinHttp);
Иначе
Сообщить("Ошибка!");
Возврат;
КонецЕсли;
Подскажите из-за чего? Задача - получить и сохранить экселевский файл на диск, с Dropbox.
|
|
1
Tatitutu
15.07.20
✎
12:09
|
|
|
2
SkillUp
15.07.20
✎
12:24
|
(1) Ок, сп.
|
|
3
Ёпрст
гуру
15.07.20
✎
12:25
|
(0) ну как бэ, в снеговике, для этого ни MSScriptControl, ни WinHttpRequest ни разу не упал (ну разве что в 8.1 и ранее)
|
|
4
fisher
15.07.20
✎
12:26
|
Странно. Если ОФ и с клиента, то на права ругаться не должно, ибо запускается под твоими правами. Неужели серверный модуль, типа задание регламентное или еще что?
А вообще, по-идее это должно переписываться на нативное HTTP-соединение
|
|
5
Ёпрст
гуру
15.07.20
✎
12:28
|
+3 смотри HTTPСщединение и его методы
Получить(<HTTPЗапрос>, <ИмяВыходногоФайла>)
|
|
6
SkillUp
15.07.20
✎
12:34
|
(5) (4) (3) (1) Решил проблемы так, может куому-то пригодиться:
Если WinHttp.Status = 200 Тогда
StreamOut = Новый COMОбъект("ADODB.Stream");
StreamOut.Type = 1;
StreamOut.Mode = 3;
StreamOut.Open();
StreamOut.Write(WinHttp.ResponseBody);
//РежимДиалога = РежимДиалогаВыбораФайла.Открытие;
//Диалог = Новый ДиалогВыбораФайла(РежимДиалога);
StreamOut.SaveToFile(ИмяФ, 2);
StreamOut.Close();
StreamOut = Неопределено;
Иначе
Сообщить("Ошибка!");
Возврат;
КонецЕсли;
|
|
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший