Обсуждение темы "Обмен кнопками"

Обсуждение вопросов автоматизации Total Commander с помощью сторонних программ и скриптовых технологий.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

MEN
Сообщения: 3
Зарегистрирован: Пн окт 05, 2015 20:36

Сообщение MEN »

Спасибо!!!!
Получили кнопку быстрой смены IP
Удобно иметь пару кнопок и переключаться мгновенно.

Код: Выделить всё

TOTALCMD#BAR#DATA
cmd.exe
/c "netsh interface ip set address name="Lan" static 192.168.68.100 255.255.255.0 192.168.68.1 1 & netsh interface ip set dns name="Lan" static 192.168.68.1 "
shell32.dll,18
Изменить IP и DNS адаптера по имени Lan

0
-1
Еще можно поставить галочку "в свернутом" виде чтобы не висел черный квадрат на время переключения.
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

Три предыдущих поста перенесены из темы "Обмен кнопками", где им совершенно нечего делать: фактически ни в первом, ни в последнем посте нет универсальной и полезной кому-то ещё готовой кнопки, а целью этого постинга было, похоже, исключительно выяснение MEN частного вопроса по склейке записей в одну cmd-строку.
Даже самая богатая фантазия
Не представит себе наши безобразия.
ice_daemon
Сообщения: 23
Зарегистрирован: Пт июн 07, 2013 04:27

Сообщение ice_daemon »

А можно здесь сделать, чтобы на нескольких панелях сразу изменялось?
И количество кнопок для каждой панели свое задавать.
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

ice_daemon

Код: Выделить всё

TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe
/ei BtCnt(26,40,Name1) BtCnt(26,80,Name2) BtCnt(40,80,Name3)
WCMICONS.DLL,14
Переключатель количества кнопок в панелях инструментов Name1, Name2, Name3


-1
Команду для правки количества кнопок в панели инструментов надо записать отдельной строкой в секцию [Items] файла TCFS2.ini:

Код: Выделить всё

BtCnt = varset(1, #1) if(ini(`%COMMANDER_PATH%\Bars\#3.bar`, Buttonbar, Buttoncount, #1), varset(1, #2)) set_ini(`%COMMANDER_PATH%\Bars\#3.bar`, Buttonbar, Buttoncount, varget(1))
Путь к папке с панелями инструментов %COMMANDER_PATH%\Bars\ изменить (в двух местах) на свой.
ice_daemon
Сообщения: 23
Зарегистрирован: Пт июн 07, 2013 04:27

Сообщение ice_daemon »

Спасибо.
Ещё хотел такой момент уточнить, если количество кнопок плавающее, точное значение доступно в виде переменных в батнике, или в виде текстового файла вида
ButtonCountBar1=30
ButtonCountBar2=35
ButtonCountBar3=42

Можно как-то учесть этот момент?
Например задавать количество кнопок в tcfs2.ini
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

ice_daemon
За оффтоп — замечание. Для обсуждения кнопок существует специальная тема в "Автоматизации", куда и переносится из "Обмена кнопками" вся последняя цепочка (с минимальной правкой первого сообщения).
Даже самая богатая фантазия
Не представит себе наши безобразия.
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

ice_daemon писал(а):Например задавать количество кнопок в tcfs2.ini
Возможно, я не понял последнюю задачу, а также тот момент, почему количество кнопок неудобно задавать в самой кнопке. Но можно задавать и через секцию [Macros] в TCFS2.ini, добавив в неё строки

Код: Выделить всё

ButtonCountBar1=30 
ButtonCountBar2=35 
ButtonCountBar3=42
Чтобы значения передавались, например, в качестве второго параметра для каждой из трёх панелей, команду записать в виде:

Код: Выделить всё

BtCnt = varset(1, #1) if(ini(`%COMMANDER_PATH%\Bars\#3.bar`, Buttonbar, Buttoncount, #1), varset(1, ButtonCountBar#2)) set_ini(`%COMMANDER_PATH%\Bars\#3.bar`, Buttonbar, Buttoncount, varget(1))
, а строку параметров в кнопке сделать такой:

Код: Выделить всё

/ei BtCnt(26,1,Name1) BtCnt(26,2,Name2) BtCnt(40,3,Name3)
Добавлено.
Либо команду BtCnt не изменять, а в строке параметров кнопки указывать по желанию или введённые в TCFS2.ini макросы, или непосредственно числа:

Код: Выделить всё

/ei BtCnt(26, ButtonCountBar1,Name1) BtCnt(26, ButtonCountBar2,Name2) BtCnt(40,42,Name3)
Последний раз редактировалось sa Вт дек 15, 2015 15:22, всего редактировалось 1 раз.
ice_daemon
Сообщения: 23
Зарегистрирован: Пт июн 07, 2013 04:27

Сообщение ice_daemon »

Большое спасибо

Добавлено спустя 1 час 14 минут:

а redraw или update куда прописывать и как?
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

ice_daemon
Например, можно, по аналогии с исходной кнопкой в строке параметров после Name3) добавить

Код: Выделить всё

 /ef "run_item(locktc,1) tcm(2901) tcm(2901) run_item(locktc,0) redraw"
Аватара пользователя
Aleks431
Сообщения: 74
Зарегистрирован: Пн май 23, 2011 23:49

Сообщение Aleks431 »

Подскажите, пожалуйста, можно ли сделать кнопку работающую через "Выполнить" из меню Пуска? И так по порядку:
Для конвертации звуковых дорожек из DTS в AC3 использую EAC3to. В инструкции к ней говорится:
1. Положить файл DTS в папку с программой, переименовать файл в track1.dts,
2. Меню Пуск -> Выполнить -> Вставить строку (под мое расположение)
W:\TVHD\eac3to\eac3to.exe track1.dts track1.ac3 -640 -libav
3. Нажать - Ок.
Вот как бы автоматизировать хотя бы часть процесса - пусть я сам переместил в папку с программой, а затем встал мышем на файл, нажал кнопку...
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Aleks431
В чём проблема? Есть %V, %P, %N, %O, %E. Справка.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
Aleks431
Сообщения: 74
Зарегистрирован: Пн май 23, 2011 23:49

Сообщение Aleks431 »

Получилось так

Код: Выделить всё

TOTALCMD#BAR#DATA
W:\TVHD\eac3to\eac3to.exe
%V "%P%O AC3 5.1 640 kbps".ac3 -640 -libav
WcmiconsMy.dll,143
Конвертация DTS в AC3 через Eac3To
W:\TVHD\eac3to\

-1
Последний раз редактировалось Aleks431 Сб янв 09, 2016 17:07, всего редактировалось 6 раз.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Получилось? >
Aleks431 писал(а):встал мышем на файл, нажал кнопку.
Нет, не получилось.
Положить файл DTS в папку с программой
< Это при наличии полных путей не требуется.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
Aleks431
Сообщения: 74
Зарегистрирован: Пн май 23, 2011 23:49

Сообщение Aleks431 »

Подправил. Заменил на O - остается родное имя.
Flasher писал(а):
Положить файл DTS в папку с программой
< Это при наличии полных путей не требуется.
Тогда уж лучше из любой папки! Программа максимум.
Решил - надо добавить %P.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Aleks431 писал(а):Заменил на O - остается родное имя.
В данном случае вместо %P%O.dts достаточно написать %V, а вот %P%O.ac3 нужно обязательно взять в кавычки на случай пути с пробелами.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Ответить