Тогда на кой нужны были бы резидентные скрипты, если бы они сверяли класс только раз? Всё время сверяет.
Один раз - имелось в виду, непосредственно перед очередным выполнением скрипта. Когда класс сверен и начато выполнение скрипта, вряд ли до окончания его выполнения будет следующая проверка.
Активировать и не надо, надо не разрешать выполнять нажатия, когда окно не активно.
Не вижу смысла. При активации из тотала (хоткеем или кнопкой тулбара) тотал все равно будет активным. А активировать такую команду, когда поверх тотала открыт модальный диалог, из тотала не получится всё равно. При активации по хоткею какого-нибудь менеджера хоткеев - неизвестно, какое окно будет активным (полезность команды станет нулевой). Так или иначе, работа будет выполняться именно с тоталом, следовательно, раз команда запущена, она должна что-то сделать.
Ты ж пишешь, что send не всё равно. А по этим словам, получается, что всё равно.
Для
send всё равно, кто получит нажатия. Не всё равно тому, кто
send вызывает.
(в AHK можно и по контролам бегать)
Думаю, она ко всем процессам подключает свой хук-модуль.
Поэтому тут развитие потребуется для ровных срабатываний.
Популярнее поясни, чего конкретно ты пытаешься добиться проверкой класса активного окна.
sa писал(а):send(`{TAB} {ENTER}`) передаётся уже не в окно диалога изменения атрибутов, которое остаётся открытым, а в окно TC.
Да, тут баг. Я думал, что при активации окна тотала (которая происходит при вызове второй
send) система активирует модальное окно, но она умудряется сделать активным окно тотала при открытом диалоге, в результате нажатия передаются ему. Нашел способ активировать именно модальное окно, если оно есть, проверяй.
Бета 334.