Показано с 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.

Похожие темы

  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

Ваши права

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