Страница 6 из 8

Добавлено: Ср окт 21, 2015 18:54
Avada
sa
После выявления в ЛС непосредственной причины проблемы (конфликта с Punto Switcher) по итогам проверки обновлённой кнопки (как в XP, так и в Win7) пока больше никаких замечаний не имею.
Flasher
На Win7, в отличие от XP, некоторые проблемы есть. См. ЛС.

Добавлено: Ср окт 21, 2015 22:31
sa
Avada
Спасибо!
Обновил кнопку в теме, чтобы избежать возможного конфликта Punto Switcher и TCFS2, а именно заменил в функции send_wait режим передачи "~" на режим "@".

Править кнопки будет проще, если команду для вызова фильтра (назовём её Custom_F_D) записать отдельной строкой в секцию [Items] файла TCFS2.ini. Для обновлённого варианта она выглядит так:

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

Custom_F_D = run_item(locktc,1) tcm(524) tcm(314,1) eval(send_wait(@`>`#1, findwnd(`TCOMBOINPUT`))) send(`{ENTER}`, findwnd(`TCOMBOINPUT`)) delay(200) tcm(3311,1) eval(send_wait(@`>`#1, findwnd(`TCOMBOINPUT`))) send(`{ENTER}`, findwnd(`TCOMBOINPUT`)) delay(200) tcm(2023) tcm(524) run_item(locktc,0) redraw
В кнопках же для этой команды останется передать только имя фильтра, например, так:

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

TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe /ei "Custom_F_D(
`не старше 1 дня`                                                                                    )"
WCMICONS.DLL,24
Фильтр для файлов/папок не старше 1 дня


-1
Для тех, кто создаст в ТК пользовательскую команду em_cd (с командой cd и параметром %A%Z), Custom_F_D будет такой:

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

Custom_F_D = run_item(locktc,1) tcm(524) tem(`em_cd >`#1) delay(200) tcm(3311,1) eval(send_wait(@`>`#1, findwnd(`TCOMBOINPUT`))) send(`{ENTER}`, findwnd(`TCOMBOINPUT`)) delay(200) tcm(2023) tcm(524) run_item(locktc,0) redraw
Благодаря cd >имя_фильтра в этом случае на экране не будет мелькать один из двух диалогов выбора фильтра.

Добавлено: Сб окт 24, 2015 10:42
sa
Flasher
А какой резон в (UTime, 0, DNow - D) вместо (UTime, D, DNow)?

Добавлено: Сб окт 24, 2015 11:29
Flasher
Avada
Вроде как решил проблему.

sa
Не вместо, а на старый манер так сделал. По сути это одно и то же.

Добавлено: Сб окт 24, 2015 11:32
sa
Flasher писал(а):По сути это одно и то же.
Тогда зачем же править скрипт?

Добавлено: Сб окт 24, 2015 11:42
Flasher
Чтобы работал.

Добавлено: Сб окт 24, 2015 11:46
sa
Flasher
Точнее, чтобы правильно работал. Тогда и первый уж поправь.

Добавлено: Сб окт 24, 2015 11:49
Flasher
sa
А неправильно - это как?
В первом нечего править.

Добавлено: Сб окт 24, 2015 11:58
Avada
sa
Второй вариант скрипта неправильно работал в x64, с первым проблем не было, поскольку иначе выводилось сообщение об отсутствии соответствий. Воспроизводить здесь всю историю проблемы, подробно прорабатывавшуюся в ЛС, нет возможности.

Добавлено: Сб окт 24, 2015 12:00
sa
Flasher писал(а):В первом нечего править.
То есть там так и останется (UTime, 0, DNow - D)?
Попробуй, например строку параметров, когда m = 1 и сравни результаты первого и второго скриптов.

Добавлено: Сб окт 24, 2015 12:01
Avada
Flasher
Всё, результат достигнут. Благодарю за долготерпение.

Добавлено: Сб окт 24, 2015 12:08
Flasher
sa
В этом нет необходимости. Я уже указал на неизменность сути.

Avada
Хорошо. Пожалуйста.

Добавлено: Сб окт 24, 2015 12:14
sa
Flasher писал(а):Я уже указал на неизменность сути.
Тогда верни (UTime, 0, DNow - D) и во второй и считай, что я ни о чём не спрашивал.

Добавлено: Сб окт 24, 2015 12:16
Flasher
sa
Просто расслабься. 8)

Добавлено: Сб окт 24, 2015 12:22
sa
Flasher писал(а):расслабься
Хорошо! С моим вариантом (UTime, D, DNow) во втором скрипте это не сложно.