Подтверждаю: комбинации с Alt заработали.Loopback писал(а):- Tweaks: исправлена работа модификатора Alt в SetHotkeyAction
Autorun
Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер
Loopback
Спасибо за исправления! Я опять с простынёй, прошу снисходительности.
SetHotkeyAction в отношении прошлых замеченных шероховатостей теперь работает без запинки. Но срабатывает только КЗ:
А вот так не срабатывает:
Может так и должно быть?
SetMessageAction. Пример из справки
в связке с вызовом из TCFS2, вызываю кнопкой
В 32-бит срабатывает только самый первый вызов: MsgBox появляется. При последующих вызовах MsgBox не появляется. И так до перезагрузки Windows. После перезагрузки опять 1й срабатывает, остальные нет.
При помощи au3-скрипта (из справки) я также пробовал вызвать: тот же результат.
А на 64-бит вызывает ошибку:
Следующий момент: если возможно, подскажите, пожалуйста, алгоритм действий. В TWinkey есть такая ф-ция NextQuickView, вот её описание:
безуспешно попытался воспроизвести:
Я понимаю, что как школьник вслепую тыкаю )) Но с другой стороны, лучше так, чем вообще никак. Подскажите, пожалуйста, правильно ли двигаюсь?
Чтобы хоть как-то разобраться, я попытался выслать Message при помощи TCFS2. На параметры "046A, 075BC371, 0013EC80" он заругался, а принял их пересчёт в Dec:
При вызове кнопкой этой команды в панели QuickView меняется заголовок (на кракозябр), т.е. видно, что что-то там передаётся и даже куда-то попадает, но не туда и не то, что нужно )) Из Autorun же вообще ничего не происходит.
Спасибо за исправления! Я опять с простынёй, прошу снисходительности.
SetHotkeyAction в отношении прошлых замеченных шероховатостей теперь работает без запинки. Но срабатывает только КЗ:
Код: Выделить всё
SetHotkeyAction /K:C /K:S /H:N MsgBox "Message received"Код: Выделить всё
SetHotkeyAction /K:C /K:S /H:N MsgBox("Message received")SetMessageAction. Пример из справки
Код: Выделить всё
Func MyMessageFunc()
MsgBox "Сообщение получено"
EndFunc
SetMessageAction 55555 MyMessageFuncКод: Выделить всё
TOTALCMD#BAR#DATA
%TCFS2%
/ef "msg(55555, 0, 0)"
%COMMANDER_ICONS%\bars.outline.software.dll,5
Debug SetMessageAction
-1
При помощи au3-скрипта (из справки) я также пробовал вызвать: тот же результат.
А на 64-бит вызывает ошибку:
Код: Выделить всё
[284] SetMessageAction 55555 MyMessageFunc
Missing closing quote for string:Я хочу попытаться средствами Autorun сделать подобное. Пока попытки не увенчались успехом. А делал я вот что: при помощи Spy++ посмотрел Message, высылаемый окну TC при нажатии 4 в QuickView. Получил:Быстрый просмотр со следующим плагином
Чтобы при быстром просмотре в TC выбрать для файла под курсором следующий подходящий LS-плагин, приходится сначала переместить фокус из файловой панели в окно быстрого просмотра (на месте другой файловой панели), там нажать один или несколько раз клавишу 4, а для продолжения навигации по файлам снова вернуться в исходную панель. Предлагаемая функция позволяет во время быстрого просмотра переключаться с клавиатуры (например, той же клавишей 4) на другой подходящий плагин внутреннего просмотрщика, не покидая исходной файловой панели. Способ вызова команды NextQuickView определите на странице Клавиши и команды.
Код: Выделить всё
S message:0x046A [User-defined:WM_USER+106] wParam:075BC371 lParam:0013EC80Код: Выделить всё
# пробовал по отдельности, и КЗ
SetHotkeyAction /K:C /K:S /H:N SendMessage %AUTORUN_TCHANDLE% 046A 075BC371 0013EC80
# и ФЗ
SetHotkeyAction /K:C /K:S /H:N SendMessage(%AUTORUN_TCHANDLE%, 046A, 075BC371, 0013EC80)Чтобы хоть как-то разобраться, я попытался выслать Message при помощи TCFS2. На параметры "046A, 075BC371, 0013EC80" он заругался, а принял их пересчёт в Dec:
Код: Выделить всё
tcfs2.exe /ef "msg(1130, 123454321, 1305728)"Так получается смешивается КЗ с ФЗ. Если нужно именно в ФЗ выражение, придется через Eval:yozhik писал(а):А вот так не срабатывает:
Код: Выделить всё
SetHotkeyAction /K:C /K:S /H:N Eval 'MsgBox("Message received")'У меня это выглядит по-другому, но да, тут баг.yozhik писал(а):В 32-бит срабатывает только самый первый вызов: MsgBox появляется. При последующих вызовах MsgBox не появляется. И так до перезагрузки Windows. После перезагрузки опять 1й срабатывает, остальные нет.
У меня не появляется, но скорее всего это связано с тем же. И вот это:yozhik писал(а):А на 64-бит вызывает ошибку:
вероятно тоже.В 32-бит работает до N раза. Нажимаю — открывает окно Конфигурация, как и должен.
Скорее всего так не получится, по значениям wParam:075BC371 lParam:0013EC80 видно, что передаются какие-то указатели - структуры, строки или еще что-нибудь. Если еще раз получить сообщение с Spy++, они скорее всего будут другие. Так что мало отправить сообщение, надо точно знать, какие данные передаются. Хотя, даже если это будет точно известно, в Autorun нет возможности работать со структурами и не уверен что она появится.yozhik писал(а): что что-то там передаётся и даже куда-то попадает, но не туда и не то, что нужно
Простейший способ представляется отправка нажатий клавиш, например скриптом Autoit:
Код: Выделить всё
Send("{TAB}4{TAB}")
В Win10 Pro, TC 10.51x64 возникла проблема с закрытием окон TC, запущенных отдельным процессом. Можно проверить, вызвав поиск отдельным процессом (Alt+Shift+F7). При попытке закрытия окна появляется сообщение "(Не отвечает)". Воспроизводится, начиная с 2.2.8_beta. Причём в TC x32 всё нормально. Может кто-то подтвердить, или проблема только у меня?
P.S. Показалось, что вызывать поиск надо из папки самого запущенного тотала.
P.S. Показалось, что вызывать поиск надо из папки самого запущенного тотала.
Последний раз редактировалось sa Ср окт 12, 2022 17:33, всего редактировалось 1 раз.
- Monarch-LFV
- Сообщения: 360
- Зарегистрирован: Пн июл 22, 2019 13:20
У себя такое не воспроизвёл.sa писал(а):В Win10 Pro, TC 10.51x64 возникла проблема с закрытием окон TC, запущенных отдельным процессом. Можно проверить, вызвав поиск отдельным процессом (Alt+Shift+F7). При попытке закрытия окна появляется сообщение "(Не отвечает)". Воспроизводится, начиная с 2.2.8_beta. Причём в TC x32 всё нормально. Может кто-то подтвердить, или проблема только у меня?
P.S. Показалось, что вызывать поиск надо из папки самого запущенного тотала.
TC 10.51 combo, Win10 x64 21H2 19044.2075
TC 11.58 combo, Windows 11 x64
У меня как-то не особо проявляется, но причина вроде достаточно очевидна. Тут пока версия с исправлением, следующая версия будет позже.
- Monarch-LFV
- Сообщения: 360
- Зарегистрирован: Пн июл 22, 2019 13:20
Monarch-LFV
С помощью параметра командной строки:
%commander_exe% /S=S:=имя_шаблона
%commander_exe% /S=S:= "c:\Dir1" "d:\Dir2"
С помощью параметра командной строки:
Примеры:/S=S Запускает отдельным процессом инструмент синхронизации каталогов без открытия основного окна TC. В параметрах командной строки можно указать либо непосредственно два пути, либо шаблон в форме /S=S:имя_шаблона
Если параметр начинается со знака равенства "=" (например, /S=S:=имя_шаблона), сравнение начнётся сразу после открытия диалога. Если знак равенства указан без имени шаблона (т. е. /S=S:=), то для сравнения будут взяты каталоги, переданные через командную строку, и последние использовавшиеся настройки.
%commander_exe% /S=S:=имя_шаблона
%commander_exe% /S=S:= "c:\Dir1" "d:\Dir2"
Monarch-LFV
Код: Выделить всё
[em_SyncStandalone]
button=wcmicons.dll,48
cmd=%COMMANDER_EXE%
menu=Синхронизация каталогов отдельным процессом
param=/S=S "%X%P" "%T"