OneScript icon indicating copy to clipboard operation
OneScript copied to clipboard

COMException Несовпадение типов - при передаче нового массива из COM вызова через возвращаемый параметр

Open tormozit opened this issue 2 months ago • 0 comments

ОСкрипт 1.9.3 Турбоконф 6.4 Вызываю метод COM объекта V83.Application (версия платформы не играет роли)

ОСкрипт вызов

Массив1 = Неопределено;
V83.Модуль1.Метод1(Массив1);
V83.Модуль1.Метод1(Массив1); // Тут выбрасывается исключение после возврата из COM

COM модуль Модуль1:

Процедура Метод1(Массив) Экспорт
       Массив = Новый Массив;
КонецПроцедуры

ScriptEngine.Machine.ExternalSystemException: {Модуль C:\Portable\TurboConf\user_scripts\RDT.os / Ошибка в строке: 6036 / Внешнее исключение (System.Runtime.InteropServices.COMException): Несовпадение типов. (Исключение из HRESULT: 0x80020005 (DISP_E_TYPEMISMATCH))}
Результат = ПолеТекстаПрограммы.ЗапомнитьДляСравнения(Ложь, Текст, МассивСравнения);

Этот же код давно и стабильно работал на старой версии ОСкрипт (вроде бы 1.9.1) Вероятно связана с https://github.com/EvilBeaver/OneScript/issues/1588

tormozit avatar Oct 19 '25 08:10 tormozit