Возможно.plutus писал(а):Возможно ли сделать..
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое
Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер
MVV
В продолжение обсуждения, начатого в теме по Autorun, отвечаю на вопрос, заданный там.
Нет, если взять для кнопки указанную там строку (с отбрасыванием ShellExec и заменой путей на мои, естественно) правильно не срабатывает.
[cut="Код кнопки"]TOTALCMD#BAR#DATA
"%Commander_path%\Utils\TCFS2\TCFS2.exe" '/ef "tcd(`\\\Virtual Panel`,,S) tcm(570, 1)"'
C:\Totalcmd\Wciconex.dll
-1[/cut]Отображается сообщение об ошибке — [cut="вот такое"][/cut]А если нажать "Отмена", то [cut="ещё одно"][/cut]
Может быть, там что-то в синтаксисе менять надо?
В продолжение обсуждения, начатого в теме по Autorun, отвечаю на вопрос, заданный там.
Нет, если взять для кнопки указанную там строку (с отбрасыванием ShellExec и заменой путей на мои, естественно) правильно не срабатывает.
[cut="Код кнопки"]TOTALCMD#BAR#DATA
"%Commander_path%\Utils\TCFS2\TCFS2.exe" '/ef "tcd(`\\\Virtual Panel`,,S) tcm(570, 1)"'
C:\Totalcmd\Wciconex.dll
-1[/cut]Отображается сообщение об ошибке — [cut="вот такое"]
Код: Выделить всё
---------------------------
TCFS2
---------------------------
Error:
Unavailable key
Actions:
'/ef
Terminate process?
---------------------------
ОК Отмена
---------------------------Код: Выделить всё
---------------------------
TCFS2
---------------------------
Error:
Unavailable key
Actions:
tcd(`\\\Virtual Panel`,,S) tcm(570, 1)'
Terminate process?
---------------------------
ОК Отмена
---------------------------Может быть, там что-то в синтаксисе менять надо?
Даже самая богатая фантазия
Не представит себе наши безобразия.
Не представит себе наши безобразия.
Да, там лишние кавычки:
[cut="P.S.:"]Я думаю, маленькие коды в спойлеры пихать не стоит.[/cut]
Код: Выделить всё
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe
/ef "tcd(`\\\Virtual Panel`,,S) tcm(570,1)"
Wcmicons.dll,52Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Flasher
Да, так с кнопкой всё работает.
[cut="P.S."]Мне было просто интересно поэкспериментировать с возможностями спойлеров. Следовать своему примеру никого, разумется, не призываю.[/cut]
Да, так с кнопкой всё работает.
[cut="P.S."]Мне было просто интересно поэкспериментировать с возможностями спойлеров. Следовать своему примеру никого, разумется, не призываю.[/cut]
Последний раз редактировалось Avada Вс авг 25, 2013 17:42, всего редактировалось 1 раз.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Не представит себе наши безобразия.
Avada
Происходит, просто ты не успеваешь этого заметить:
Происходит, просто ты не успеваешь этого заметить:
"tcd(`\\\Virtual Panel`,,S) delay(500) tcm(570,1)"
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Flasher
Да, происходит, я уже разобрался и успел поправить пост (сначала забыл отключить активацию Virtual Panel через Autorun другим способом).
Остаётся выяснить, в каком виде эту строку дать не в кнопке, а в Autorun.
MVV
Кстати, по заголовку темы. Может быть, из "TCFS2 + TCFS2Tools - перевод ТС в полноэкранный режим" оставить только первую половину с названиями? А то поясняющая часть уже как-то слабо отражает реальную функциональность...
Да, происходит, я уже разобрался и успел поправить пост (сначала забыл отключить активацию Virtual Panel через Autorun другим способом).
Остаётся выяснить, в каком виде эту строку дать не в кнопке, а в Autorun.
MVV
Кстати, по заголовку темы. Может быть, из "TCFS2 + TCFS2Tools - перевод ТС в полноэкранный режим" оставить только первую половину с названиями? А то поясняющая часть уже как-то слабо отражает реальную функциональность...
Даже самая богатая фантазия
Не представит себе наши безобразия.
Не представит себе наши безобразия.
Ответил в той теме.Avada писал(а):Остаётся выяснить, в каком виде эту строку дать не в кнопке, а в Autorun.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Avada,
В Autorun как раз давать надо в виде, который я там приводил: строка параметров должна быть заключена во внешние кавычки, причём отличные от двойных (т.к. двойные используются в самой строке).
Согласен, название темы можно расширить.
Flasher,
С отправкой по tcm(570,1) у меня работает и без delay(500).
В Autorun как раз давать надо в виде, который я там приводил: строка параметров должна быть заключена во внешние кавычки, причём отличные от двойных (т.к. двойные используются в самой строке).
Согласен, название темы можно расширить.
Flasher,
С отправкой по tcm(570,1) у меня работает и без delay(500).
Я почти на 100% уверен, что это были первые спойлеры, которые я видел на этом форуме. Выглядит интересно. Думаю, кнопка в интерфейсе редактора сообщения бы не помешала.Avada писал(а):Мне было просто интересно поэкспериментировать с возможностями спойлеров.
Последний раз редактировалось MVV Вс авг 25, 2013 13:54, всего редактировалось 1 раз.
Так задержку я привёл для проверки работоспособности. См. контекст.MVV писал(а):С отправкой по tcm(570,1) у меня работает и без delay(500).
Это уже обсуждалось.MVV писал(а):Думаю, кнопка в интерфейсе редактора сообщения бы не помешала.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Примерчик с ожиданием закрытия окна поиска. Кнопка запускает поиск, максимум 10 секунд ждёт его окончания, ежесекундно пытаясь вызвать результаты поиска на панель и, в случае закрытия окна поиска в отведённое время, переводит панель в краткий режим:
Для правильной работы кнопки нужно добавить в TCFS2.ini макрос:
Код: Выделить всё
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe /ef "tcm(501,1) delay(200) send(`{BKSP}+{TAB}{RIGHT}~(%ш%o){TAB 2}{UP}{ENTER}`, findwnd(`TFindFile`))
if(wait_for_s(findwnd(`TFindFile`)==0, 10), tcm(301,1))"
WCMICONS.DLL,47
Поиск файлов/каталогов не старше 1 часа с выводом на панель и переходом в краткий режим
0
-1
Код: Выделить всё
wait_for_s=if(#2<=0, 0, if (#1, 1, 0*send(`~(%л%l)`, findwnd(`TFindFile`))*delay(1000)+wait_for_s(#1, #2-1)))Жесть! 
Кстати, вместо Shift+Tab и Right можно просто послать Ctrl+Tab.
А ещё можно написать общую команду для поиска с заданным именем поискового шаблона, тогда не надо будет настраивать параметры на лету.
Задумался, не добавить ли цикл for (который можно использовать и со счетчиком, и как while, если не проверять значение счетчика), чтобы избежать рекурсивных вызовов макросов...
Кстати, вместо Shift+Tab и Right можно просто послать Ctrl+Tab.
А ещё можно написать общую команду для поиска с заданным именем поискового шаблона, тогда не надо будет настраивать параметры на лету.
Задумался, не добавить ли цикл for (который можно использовать и со счетчиком, и как while, если не проверять значение счетчика), чтобы избежать рекурсивных вызовов макросов...
Я с подобной кнопки и начал.MVV писал(а):А ещё можно написать общую команду для поиска с заданным именем поискового шаблона
Да, у себя после поиска я перевожу панель не в краткий режим, а в режим со своим набором колонок (используется команда 278).
Хорошо бы...MVV писал(а):не добавить ли цикл for
Добавил цикл.
TCFS2 Build 400
Функция loop с одним параметром, цикл крутится, пока параметр возвращает 1. Как только вернул 0, конец цикла, и возвращается число сделанных итераций. В выражении цикла можно узнать номер итерации с помощью переменной @ (начиная с 0). Задержка между итерациями - в том же выражении с помощью delay.
В инишнике пример использования (переделал макрос wait_for).
TCFS2 Build 400
Функция loop с одним параметром, цикл крутится, пока параметр возвращает 1. Как только вернул 0, конец цикла, и возвращается число сделанных итераций. В выражении цикла можно узнать номер итерации с помощью переменной @ (начиная с 0). Задержка между итерациями - в том же выражении с помощью delay.
В инишнике пример использования (переделал макрос wait_for).
MVV
Loop работает.
Предыдущая кнопка, но уже без дополнительного макроса (соответственно без необходимости правки TCFS2.ini ) и с увеличенным до двух минут временем ожидания окончания поиска:
Loop работает.
Предыдущая кнопка, но уже без дополнительного макроса (соответственно без необходимости правки TCFS2.ini ) и с увеличенным до двух минут временем ожидания окончания поиска:
Код: Выделить всё
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe /ef "tcm(501,1) delay(200) send(`{BKSP}^{TAB}~(%ш%o){TAB 2}{UP}{ENTER}`, findwnd(`TFindFile`)) loop(@<=120 && if(findwnd(`TFindFile`)==0, 0, send(`~(%л%l)`, findwnd(`TFindFile`))+delay(1000)))
if(findwnd(`TFindFile`)==0, tcm(301,1))"
WCMICONS.DLL,47
Поиск файлов/каталогов не старше 1 часа с выводом на панель и переходом в краткий режим
-1