Окно этого приложения не поддерживает UIAutomation

tormozit Закрыто

Вызвал команду "ИР Выделить метод". После настройки параметров в модальном COM окне. Нажимаю ОК и получаю ошибку метода ТурбоКонф.ПолучитьТекстМодуля() . Проверил несколько раз подряд.

ScriptEngine.Machine.ExternalSystemException: {Модуль C:\Portable\TurboConf\user_scripts\RDT.os / Ошибка в строке: 201 / Внешнее исключение (System.Exception): Окно этого приложения не поддерживает UIAutomation.}
НовыйТекстМодуляИзКонфигуратора = ТурбоКонф.ПолучитьТекстМодуля(ВыделенныйТекст, Пустышка);
---> System.Exception: Окно этого приложения не поддерживает UIAutomation.
в TurboConf.Core.TurboAPI.TurboApi.‌​‮​‍‏‌​‫‎‭‮‫‮​‎‏‌‫‍‮(IntPtr , Int32& , String& , CharacterRange& )
в TurboConf.Core.TurboAPI.TurboApi.GetText6(IntPtr fg, Int32& pos, String& selectedText, CharacterRange& selectionRange)
в TurboConf.HostApplication.Api.GetModuleText(IVariable selectedText, IVariable pos)
в lambda_method(Closure , Api , IValue[] )
в ScriptEngine.Machine.Contexts.AutoContext`1.CallAsFunction(Int32 methodNumber, IValue[] arguments, IValue& retValue)
в ScriptEngine.Machine.MachineInstance.ResolveMethodFunc(Int32 arg)
в ScriptEngine.Machine.MachineInstance.MainCommandLoop()
--- Конец трассировки внутреннего стека исключений ---
в ScriptEngine.Machine.MachineInstance.MainCommandLoop()
в 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)

Ссылка скрыта

RDT.os

Комментарии

bolsun
#1, 10 декабря 2023 19:33

Фокус захватило всплывающее уведомление "Работа TurboConf ВОЗОБНОВЛЕНА после диалога с приложением ИР".
Рекомендуется использовать уведомления TurboConf, а не Windows. Они не перехватывают фокус.
bolsun изменил статус на Закрыто


tormozit
#2, ред. 10 декабря 2023 19:36

Проблема похоже появилась во вчерашней версии Турбоконф. Раньше не встречал ее. Код скрипта выглядит примерно так

ТурбоКонф.НачатьВызовВнешнегоОкнаАсинх("^Выделение метода.", 5000, Конфигуратор.ГлавноеОкно, РежимОткрытияВнешнегоОкна.Диалог, Истина, МодулиИР.ирКэш.ИдентификаторПроцессаОСЛкс());
	Значение = ПолеТекстаПрограммы.ВыделитьМетод();
	ОповеститьПользователяОВозобновлении();
ТурбоКонф.ЗавершитьВызовВнешнегоОкнаАсинх(Конфигуратор.ОкноВызоваСкрипта);
ПодключениеИР.Visible = Ложь;
	НовыйТекстМодуляИзКонфигуратора = ТурбоКонф.ПолучитьТекстМодуля(ВыделенныйТекст, Пустышка);


tormozit
#3, ред. 10 декабря 2023 19:44

Кроме этой проблемы еще появилась другая - метод ТурбоКонф.ПолучитьТекстМодуля() выдает исходную ошибку при первом вызове, а при последующующих получает пустой текст модуля. Хотя с этим проблем раньше не было.
Пробовал заменить ПоказатьУведомление на ПоказатьВсплывающееУведомление - эти проблемы все равно остаются.
tormozit изменил статус на Открыто


tormozit
#4, 10 декабря 2023 19:49

Моя гипотеза подтвердилась. На версии 6.0.8742.36161 проблемы не воспроизводятся.


bolsun
#5, 10 декабря 2023 20:10

(4) tormozit, исправил баг с установкой фокуса
https://disk.yandex.ru/d/XKCz9ijzgtoO1w


tormozit
#6, 10 декабря 2023 20:49

Проверил новую версию. Заработало.


tormozit
#7, 10 декабря 2023 20:50

tormozit изменил статус на Закрыто


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