Непонятная ошибка вызова скрипта

tormozit Закрыто

Вызываю команду скрипта "Вычислить выражение". Получаю непонятную ошибку

System.ArgumentOutOfRangeException: Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.
Имя параметра: index
в System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
в OneScript.Language.LexicalAnalysis.SourceCodeIterator.GetCodeLine(Int32 lineNumber)
в ScriptEngine.Machine.MachineInstance.SetScriptExceptionSource(RuntimeException exc)
в ScriptEngine.Machine.MachineInstance.ExecuteCode()
в ScriptEngine.Machine.MachineInstance.ExecuteMethod(IRunnable sdo, Int32 methodIndex, IValue[] arguments)
в ScriptEngine.Machine.Contexts.ScriptDrivenObject.CallAsFunction(Int32 methodNumber, IValue[] arguments, IValue& retValue)
в TurboConf.HostApplication.HostApplicationForm.ExecuteScript(Script script, Keys ctrl, Keys alt, Keys shift, ScreenForm statusForm, String entryPoint, ScriptOptions options, IVariable[] parameters)

Комментарии

tormozit
#1, ред. 27 сентября 2025 10:28

Ошибка ОСкрипт https://github.com/EvilBeaver/OneScript/issues/1590


tormozit
#2, ред. 23 ноября 2025 11:52

Такая ошибка сегодня возникла в строке
ПолеТекстаПрограммы.РазобратьТекущийКонтекст(Ложь, Ложь, КакВызовМетода, 0, 0, ПереходитьВоВложенныйКонтекст, ПозицияВТексте + 1);
Не понял как тут могло произойти обращение по индексу

ИР адаптер 2.41: {Модуль C:\Portable\TurboConf\user_scripts\RDT.os / Ошибка в строке: 5234 / Внешнее исключение (System.ArgumentOutOfRangeException): Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.
Имя параметра: index}

Ошибка повторялась до переподключения приложения ИР.


bolsun
#3, 27 ноября 2025 02:51

(2) tormozit, это "внешнее исключение" возникает в недрах OneSciprt, видимо при работе с COMОбъектами. Попробуй воспроизвести это без ТурбоКонф и отправить разработчику.


tormozit
#4, 23 декабря 2025 09:47

Сегодня опять столкнулся с этой очень редкой ошибкой при записи в свойство COM объекта

ScriptEngine.Machine.ExternalSystemException: {Модуль C:\Portable\TurboConf\user_scripts\RDT.os / Ошибка в строке: 5628 / Внешнее исключение (System.ArgumentOutOfRangeException): Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.
Имя параметра: index}    
			ЭлементСписка.Представление = ПолеТекстаПрограммы.СсылкаСтрокиМодуля(, Ложь);
 ---> System.ArgumentOutOfRangeException: Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.
Имя параметра: index

Снова помогло переподключение приложения ИР.
Кстати заявлено, что эта ошибка ОСкрипт исправлена в выпущенной недавно версии 1.9.4 https://turboconf.ru/Tasks/10869


bolsun
#5, 13 января 2026 14:43

Кстати заявлено, что эта ошибка ОСкрипт исправлена в выпущенной недавно версии 1.9.4 https://turboconf.ru/Tasks/10869

TurboConf сейчас использует версию 1.9.4
bolsun изменил статус на Закрыто


Для вставки изображения или файла, перетащите его в поле редактора или вставьте файл из буфера