View previous topic :: View next topic |
Author |
Message |
sa
Joined: 29 Apr 2009 Posts: 2689
|
(Separately) Posted: Mon Jan 20, 2014 09:53 Post subject: |
|
|
MVV wrote: | Да всё возможно |
Теперь и в функции send можно обходиться без {DQ}. |
|
Back to top |
|
 |
MVV

Joined: 15 Oct 2009 Posts: 4815 Location: Ростов-Дон
|
|
Back to top |
|
 |
rust
Joined: 27 Dec 2013 Posts: 8
|
(Separately) Posted: Mon Jan 20, 2014 12:38 Post subject: |
|
|
MVV, дополнительно по использованию %O. На самом деле рабочий код для выделения файлов вида File_XX, отличающихся счетчиком, выглядит так
Code: | [em_selByPartName]
button=
param=/ef "tcm(3312,1) send(`+(){DQ}^~(%O){BS 2}~*{DQ}{enter}`)"
cmd=%COMMANDER_PATH%\addons\tcfs2.exe |
Бубны с + и ^ позволяют корректно работать с русскими именами, с PuntoSwitcher и позволяют вешать на клавишу с Shift (у меня Shift+плюс).
Конечно можно использовать буфер обмена
Code: | param=/ef "tcm(1007,1) send(`^c{ESC}`) delay(100) tcm(3312,1) send(`+(){DQ}^v{BS 2}~*{DQ}{enter}`)" |
но в этом случае я теряю содержимое clipboard.
Без {DQ} с именами, содержащими пробелы, работать толком не будет  |
|
Back to top |
|
 |
sa
Joined: 29 Apr 2009 Posts: 2689
|
(Separately) Posted: Mon Jan 20, 2014 13:18 Post subject: |
|
|
rust wrote: | Без {DQ} с именами, содержащими пробелы, работать толком не будет |
Заменил {DQ} на ". Работает!
Last edited by sa on Mon Jan 20, 2014 13:39; edited 1 time in total |
|
Back to top |
|
 |
rust
Joined: 27 Dec 2013 Posts: 8
|
(Separately) Posted: Mon Jan 20, 2014 13:36 Post subject: |
|
|
Действительно работает, пойду просить новую клавиатуру, на моей нет “ или все-таки {DQ} оставить  |
|
Back to top |
|
 |
sa
Joined: 29 Apr 2009 Posts: 2689
|
(Separately) Posted: Mon Jan 20, 2014 13:42 Post subject: |
|
|
rust wrote: | на моей нет “ |
Исправил. Я там из Word-а чего-то накопировал. |
|
Back to top |
|
 |
MVV

Joined: 15 Oct 2009 Posts: 4815 Location: Ростов-Дон
|
(Separately) Posted: Mon Jan 20, 2014 13:43 Post subject: |
|
|
Так, ну хватит, пока заменять {DQ} на кавычку можно лишь в новой бета-версии, в старых надо писать {DQ}.
rust,
По выделению я на оффоруме написал, как обойти проблему с помощью батника.
sa,
Только сижу и думаю, что за странная у тебя двойная кавычка... _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
 |
rust
Joined: 27 Dec 2013 Posts: 8
|
(Separately) Posted: Mon Jan 20, 2014 14:53 Post subject: |
|
|
MVV, спасибо, видел, батник не берет полностью имена с пробелами. Остановлюсь на втором варианте, скопировать имя в буфер, вызвать cm_SelectFiles, вставить из буфера. |
|
Back to top |
|
 |
MVV

Joined: 15 Oct 2009 Posts: 4815 Location: Ростов-Дон
|
(Separately) Posted: Mon Jan 20, 2014 15:02 Post subject: |
|
|
Там не в пробелах проблема, а в том, что диалог появляется после начала выполнения функции send, а для неё требуется, чтобы окно не теряло фокуса на протяжении всей отправки нажатий. Тут решение.
Кстати, надо в стандартную поставку включить макрос send_wait, который будет ждать окно и потом посылать ему... Пока можно вручную добавить его в секцию макросов.
Code: | send_wait=loop(@<=if(null(#3),5,#3)*10 && if(#2,send(#1,#2)*0,delay(100))) ; Ожидает появления окна и отправляет ему нажатия клавиш. Первые два параметра - как у функции send, третий - число секунд (по умолчанию 5) |
Тогда отпадет нужда в delay и wait_for:
Code: | eval(send_wait(`hello world{ENTER}`, findwnd(`TCOMBOINPUT`)) |
И батник будет работать:
Code: | start "" "%COMMANDER_PATH%\addons\tcfs2.exe" /ef "tcm(3312,1) eval(send_wait(`{DQ}%~n1{BS 2}*{DQ}{ENTER}`, findwnd(`TCOMBOINPUT`))" |
_________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon Jan 20, 2014 16:25 Post subject: |
|
|
MVV wrote: | надо в стандартную поставку включить макрос send_wait | Альтернатива обсуждаемому ранее?
А это откуда? Ты вроде нигде не афишировал. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
 |
MVV

Joined: 15 Oct 2009 Posts: 4815 Location: Ростов-Дон
|
(Separately) Posted: Mon Jan 20, 2014 16:47 Post subject: |
|
|
Скорее, реализация, т.к. не припомню других рабочих вариантов.
Flasher wrote: | А это откуда? Ты вроде нигде не афишировал. |
Из TCFS2.ini, вестимо.
Странно, что ты только увидел, другие уже используют, в теме упоминалось.  _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Last edited by MVV on Mon Jan 20, 2014 16:48; edited 1 time in total |
|
Back to top |
|
 |
sa
Joined: 29 Apr 2009 Posts: 2689
|
(Separately) Posted: Mon Jan 20, 2014 16:48 Post subject: |
|
|
Flasher wrote: | нигде не афишировал. |
См. |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon Jan 20, 2014 17:03 Post subject: |
|
|
MVV wrote: | Скорее, реализация, т.к. не припомню других рабочих вариантов. | Мысль была о функции.
MVV wrote: | Странно, что ты только увидел, другие уже используют, в теме упоминалось. | Да, зевнул, откровенно.  _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
 |
rust
Joined: 27 Dec 2013 Posts: 8
|
(Separately) Posted: Tue Jan 21, 2014 11:09 Post subject: |
|
|
MVV, батник работает, но только если передавать ему %N, я-то передавал %O. Т.е если передаем %O (как и %M), то имеем проблемы с пробелами в имени, если передаем %N, то он возвращает имя без расширения, как %O в обычной, не Search result, панели.
Кстати, в моем конкретном случае send_wait не очень подходит, в панели дубликатов класс окна при выделении файлов - TDuplSelForm, остается старый добрый delay. |
|
Back to top |
|
 |
sa
Joined: 29 Apr 2009 Posts: 2689
|
(Separately) Posted: Tue Jan 21, 2014 11:39 Post subject: |
|
|
MVV
Может быть, стоит время ожидания добавить необязательным третьим параметром непосредственно в функцию send? Не надо будет городить огород с макросом и eval... |
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|