Страница 1 из 3 123 ПоследняяПоследняя
Показано с 1 по 10 из 21

Тема: Ошибки синтаксиса OwenLogic в ST функциях вызывают креш.

  1. #1

    По умолчанию Ошибки синтаксиса OwenLogic в ST функциональных блоках вызывают креш.

    Версия 2.5.336.0

    Воспроизведение:
    - Создать ST функцию
    - Нарушить синтаксис (я например пытался вмазать выражение в инициализацию переменной).
    myvar1 : udint := 1;
    myvar2 : udint := 2;
    myvar 3: udint := myvar1 + myvar2
    - Нажать Enter при вылете окна ошибки
    - Повторить ошибку
    - Нажать Enter при вылете окна ошибки

    Воспроизведение вариант 2:
    - var x : udint := 1 + x
    - Дожидаемся окна автокомплита
    - жмем ESC
    - Моментальный вылет

    Ошибка происходит так часто, что работать с ST практически не возможно, кроме как панически сохраняясь после каждой строчки.

    Вообще сама по себе идея всплывающих окон при ошибке синтаксиса че-то как-то не очень, даже когда не вылетает.

    2.5.336.0
    System.NotSupportedException: Specified method is not supported.
    at Owen.STEditor.Infrastructure.Adapters.Translator.T o(IExpression expression, StType variableType)
    at Owen.STEditor.Infrastructure.Adapters.Translator.T o(Variable variable)
    at System.Linq.Enumerable.SelectIPartitionIterator`2. PreallocatingToArray(Int32 count)
    at System.Linq.Enumerable.SelectIPartitionIterator`2. ToArray()
    at STContext.Messages.FunctionBlockTemplate..ctor(Gui d id, IEnumerable`1 inputs, IEnumerable`1 variables, IEnumerable`1 outputs, String name, FunctionBlockDocumentation metaData)
    at Owen.STEditor.Infrastructure.Adapters.Translator.T oFunctionBlock(FunctionBlockData data)
    at Owen.STEditor.Infrastructure.Adapters.Translator.T o(FunctionBlockData data)
    at Owen.STEditor.Infrastructure.Adapters.OutputAdapte r.NotifyOnFunctionBlockChanged(FunctionBlockData functionBlockData)
    at Owen.STEditor.ApplicationLayer.CompilationUnitUpda tedEventHandler.<>c__DisplayClass16_0.<NotifyOnFun ctionBlockUpdated>b__0()
    at Owen.STEditor.ApplicationLayer.CompilationUnitUpda tedEventHandler.<>c.<Handle>b__14_3(Action action)
    at Owen.STLanguage.Extensions.ForEach[T](IEnumerable`1 obj, Action`1 action)
    at Owen.STEditor.ApplicationLayer.CompilationUnitUpda tedEventHandler.Handle(CompilationUnitUpdatedEvent ev)
    at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128 _0(Object state)
    at System.Windows.Threading.ExceptionWrapper.Internal RealCall(Delegate callback, Object args, Int32 numArgs)
    at System.Windows.Threading.ExceptionWrapper.TryCatch When(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
    at System.Windows.Threading.DispatcherOperation.Invok eImpl()
    at MS.Internal.CulturePreservingExecutionContext.Call backWrapper(Object obj)
    at System.Threading.ExecutionContext.RunInternal(Exec utionContext executionContext, ContextCallback callback, Object state)
    --- End of stack trace from previous location ---
    at MS.Internal.CulturePreservingExecutionContext.Run( CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
    at System.Windows.Threading.DispatcherOperation.Invok e()
    at System.Windows.Threading.Dispatcher.ProcessQueue()
    at System.Windows.Threading.Dispatcher.WndProcHook(In tPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
    at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
    at MS.Win32.HwndSubclass.DispatcherCallbackOperation( Object o)
    at System.Windows.Threading.ExceptionWrapper.Internal RealCall(Delegate callback, Object args, Int32 numArgs)
    at System.Windows.Threading.ExceptionWrapper.TryCatch When(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
    at System.Windows.Threading.Dispatcher.LegacyInvokeIm pl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
    at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
    at Interop.User32.DispatchMessageW(MSG& msg)
    at System.Windows.Forms.Application.ComponentManager. Interop.Mso.IMsoComponentManager.FPushMessageLoop( UIntPtr dwComponentID, msoloop uReason, Void* pvLoopData)
    at System.Windows.Forms.Application.ThreadContext.Run MessageLoopInner(msoloop reason, ApplicationContext context)
    at System.Windows.Forms.Application.ThreadContext.Run MessageLoop(msoloop reason, ApplicationContext context)
    at System.Windows.Forms.Application.Run(Form mainForm)
    at ProgramRelayFBD.Program.Main(String[] args)
    Последний раз редактировалось ReasonX; 18.10.2023 в 09:28.

  2. #2

    По умолчанию

    Цитата Сообщение от ReasonX Посмотреть сообщение
    Версия 2.5.336.0
    Вы хотя бы примеры посмотрите и какие отличия, например от Codesys 2.3
    https://owen.ru/forum/showthread.php?t=38453&page=10#93
    https://owen.ru/forum/showthread.php...39&page=29#285
    https://owen.ru/forum/showthread.php...39&page=11#105
    https://owen.ru/forum/showthread.php?t=37203
    Последний раз редактировалось kondor3000; 18.10.2023 в 08:22.

  3. #3

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    Серьезно считаете что это не доработка ОЛ, а дело вовсе не в кривых руках программиста?
    Вы в своем уме? У вас софтина крашется каждые несколько секунд, если печатать не правильно.

  4. #4

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение

    А причем тут другая IDE?

  5. #5

    По умолчанию

    Цитата Сообщение от ReasonX Посмотреть сообщение
    Вы в своем уме? У вас софтина крашется каждые несколько секунд, если печатать не правильно.
    Крашется - это когда программа закрывается без предупреждения а это просто выдаётся предупреждение.
    Доктор, если я тыкаю сюда - у меня болит. Ну так не тыкайте туда!

  6. #6

    По умолчанию

    Цитата Сообщение от ReasonX Посмотреть сообщение
    А причем тут другая IDE?
    Каждому надо объяснить, что ST только в разработке, да есть пока проблемы, но программы уже написаны и работают, Так посмотрите и проверьте работу, а потом пишите. И не делайте специально ошибки.

  7. #7
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    10,693

    По умолчанию

    Как минимум должна показываться ошибка, но завернутая в свою оболочку, чтобы можно было продолжать работать с программой. Если речь о программистах. Там вроде эти вещи на исключения делаются...
    А когда вываливает исключение и программу приходится закрывать, открывать предыдущий исходник программы это точно недоработка программеров.

  8. #8

    По умолчанию

    Цитата Сообщение от 1exan Посмотреть сообщение
    Крашется - это когда программа закрывается без предупреждения а это просто выдаётся предупреждение.
    Доктор, если я тыкаю сюда - у меня болит. Ну так не тыкайте туда!
    Крашется это значит крашется. Краш репорт по вашему откуда?

  9. #9

    По умолчанию

    Цитата Сообщение от ReasonX Посмотреть сообщение
    Крашется это значит крашется. Краш репорт по вашему откуда?
    У меня так (OL2.5.336):
    изображение_2023-10-18_125204000.png

    В подробностях текст, OL не закрывается

  10. #10

    По умолчанию

    Цитата Сообщение от 1exan Посмотреть сообщение
    У меня так (OL2.5.336):
    изображение_2023-10-18_125204000.png

    В подробностях текст, OL не закрывается
    Попробуйте несколько раз в одной строке. (Я через Enter закрываю)

Страница 1 из 3 123 ПоследняяПоследняя

Похожие темы

  1. OWEN OPC Код ошибки 57, Код ошибки 11
    от Viktor40 в разделе OPC Серверы
    Ответов: 1
    Последнее сообщение: 20.07.2023, 05:53
  2. Ответов: 1
    Последнее сообщение: 21.02.2023, 23:12
  3. В кодесисе нет подсветки синтаксиса
    от Yegor в разделе Трёп (Курилка)
    Ответов: 5
    Последнее сообщение: 27.01.2015, 12:54
  4. Формула-ошибка синтаксиса
    от Columbariy в разделе Master SCADA 3
    Ответов: 4
    Последнее сообщение: 20.02.2013, 13:22
  5. Не работает отладка в функциях на ПЛК Овен
    от Аркадий в разделе ПЛК1хх
    Ответов: 3
    Последнее сообщение: 21.11.2011, 11:26

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •