View previous topic :: View next topic |
Author |
Message |
KarS

Joined: 21 Apr 2006 Posts: 102 Location: г. Абакан
|
(Separately) Posted: Sun Aug 15, 2010 18:42 Post subject: |
|
|
gora
Действительно, нет мелькания! Ура!
Спасибо!
Однако, в рамках этой же темы возник ещё вопрос.
Всё выше указанное, относящееся к работе cmd, решало задачу перемещения файла, находящегося под курсором.
В случае, если выделено несколько файлов, то такой сценарий не подойдёт.
Можно ли, что-нибудь поправить, чтобы расширить функциональность приёма "Send To"? |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sun Aug 15, 2010 18:53 Post subject: |
|
|
KarS wrote: | Кто бы ещё помог со скриптом (vbs | Я что-то не пойму, чем предложенный мной вариант не устроил? Как раз для выделенных файлов.
И Хелпер спецом писался под ТС и используется в большинстве скриптов на форуме. |
|
Back to top |
|
 |
GGS
Joined: 02 May 2009 Posts: 322
|
(Separately) Posted: Sun Aug 15, 2010 19:06 Post subject: |
|
|
KarS wrote: | если выделено несколько файлов |
Code: | TOTALCMD#BAR#DATA
cmd /c
FOR /F "delims=" %%A IN ('type %WL') do copy "%%A" C:\test\
Wcmicons.dll,63
Копирование выделенных файлов в C:\test\
1
-1 |
|
|
Back to top |
|
 |
KarS

Joined: 21 Apr 2006 Posts: 102 Location: г. Абакан
|
(Separately) Posted: Sun Aug 15, 2010 19:06 Post subject: |
|
|
Flasher
Спасибо за разъяснения. Попытаюсь объяснить своё видение.
1. Опасаюсь устанавливать на системе много программ, чтобы система работала более стабильно.
2. Чем больше программ, тем больше голова начинает болеть, у каждой свой язык, свои тонкости.
3. Учитывая, что работаю не нескольких компьютерах (дома десктоп и ноут, + на работе), то придётся копировать и настраивать среду последовательно на каждом из них.
Поэтому стремлюсь к минимализму.
А Хелпер, как я понимаю, как плагин. И делает то же, что и стандартный WSH, с которым работает стандартный VBScript. Так может, кто-то специализируется на стандартных возможностях VBScript? |
|
Back to top |
|
 |
KarS

Joined: 21 Apr 2006 Posts: 102 Location: г. Абакан
|
(Separately) Posted: Sun Aug 15, 2010 19:15 Post subject: |
|
|
GGS
Не знаю как, но всё получилось: и с copy, и с move, и один файл, и несколько!!!
Красота!
Спасибо, замечательный totalcmd и замечательный форум!  |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sun Aug 15, 2010 19:43 Post subject: |
|
|
KarS
1. А в ТС сколько у Вас плагинов, скажем? Надо думать ни одного. От Хелпера ещё ни у кого система медленней работать не стала. Или у Вас 386 ?
2-3. Положил в дистрибутив ТС, запустил exe-шник по разу с каждой машины и забыл.
Стремление к минимализму тут необоснованно и воспринимается как излишняя паранойя. Распакованный дистрибутив весит 47 Kb.
Рассказывать Вам, допустим, про PowerPro. nircmd, nncron и т.п. вообще не имеет смысла на данном этапе. Понимание придет с развитием. KarS wrote: | Так может, кто-то специализируется на стандартных возможностях VBScript? | Скрипт делал Batya, лучше него и Volniy тут никто не сделает. Кое-что заменить в скрипте можно, но поскольку задача решена иначе, не вижу смысла тратить на это время. |
|
Back to top |
|
 |
KarS

Joined: 21 Apr 2006 Posts: 102 Location: г. Абакан
|
(Separately) Posted: Mon Aug 16, 2010 17:18 Post subject: |
|
|
Flasher
Спасибо за разъяснение.
GGS
Предложенное решение замечательно, но работает оно лишь для файлов.
Что можно подправить, чтобы вышеуказанные действия можно было делать и с каталогами? |
|
Back to top |
|
 |
KarS

Joined: 21 Apr 2006 Posts: 102 Location: г. Абакан
|
(Separately) Posted: Mon Oct 18, 2010 17:28 Post subject: |
|
|
Установил у себя Script Helper ActiveX for TC beta12, привязал к кнопке totalcmd v.7.55 скрипт, указанный выше от Batya http://forum.wincmd.ru/viewpost.php?p=39119, в окне параметра указал путь по-умолчанию и запустил.
Скрипт выдал ошибку Code: | Сценарий: С:\Program Files\totalcmd\Plugins\exe\tcwshelp_b12\CopyFolder.vbs
Строка: 42
Символ: 1
Ошибка: Не удается найти указанный файл.
Код: 80070002
Источник: (null) |
В чём может быть дело?
И ещё один вопрос: что нужно поправить в указанном скрипте, чтобы он выполнял перемещение, а не копирование? Просто хочу сделать две кнопки - одна на копирование, другая - на перемещение выделенных файлов и папок в папку по-умолчанию. |
|
Back to top |
|
 |
Batya

Joined: 15 Dec 2004 Posts: 2229 Location: Москва, Россия
|
(Separately) Posted: Mon Oct 18, 2010 18:47 Post subject: |
|
|
KarS
Ошибка в моём скрипте - не учёл, что путь к TC может содержать пробелы.
Вместо строки
Code: | WSH.Run TC & " /o /s /r=""" & SaveDir & """", 7, True |
пишем
Code: | WSH.Run """" & TC & """ /o /s /r=""" & SaveDir & """", 7, True |
KarS wrote: | И ещё один вопрос: что нужно поправить в указанном скрипте, чтобы он выполнял перемещение, а не копирование? |
Вместо строки
Code: | TCS.SendCommand "cm_Copy" |
пишем
Code: | TCS.SendCommand "cm_MoveOnly" |
_________________ Нет, я не сплю. Я просто медленно моргаю. |
|
Back to top |
|
 |
KarS

Joined: 21 Apr 2006 Posts: 102 Location: г. Абакан
|
(Separately) Posted: Tue Oct 19, 2010 08:51 Post subject: |
|
|
Batya
Спасибо за внимание к этому вопросу.
Исправление внёс (заменил указанный выше код WSH.Run TC... в двух местах скрипта), но не сработало:
1. файл под курсором скопировался не в папку, указанную в параметрах, а в папку, расположенную в панели напротив.
2. в отношении скрипта по перемещению: заменил в 47 строке "cm_MoveOnly". При проверке скрипт скопировал надлежащий переносу файл в папку, расположенную в панели напротив, а не в ту, что назначена. И не удалил исходную копию. |
|
Back to top |
|
 |
Batya

Joined: 15 Dec 2004 Posts: 2229 Location: Москва, Россия
|
(Separately) Posted: Tue Oct 19, 2010 09:50 Post subject: |
|
|
KarS wrote: | не в папку, указанную в параметрах, а в папку, расположенную в панели напротив |
Путь к папке содержит пробелы? В параметрах путь стоит в кавычках?
KarS wrote: | заменил в 47 строке "cm_MoveOnly". При проверке скрипт скопировал надлежащий переносу файл |
А вот это уж совсем невозможно.
Единственное, что может быть - эти файлы удерживаются какой-то программой и TC по невозможности их перенести, просто копирует.
Если вручную пытаться переместить файлы по F6 -> F2, что происходит? _________________ Нет, я не сплю. Я просто медленно моргаю. |
|
Back to top |
|
 |
KarS

Joined: 21 Apr 2006 Posts: 102 Location: г. Абакан
|
(Separately) Posted: Tue Oct 19, 2010 17:14 Post subject: |
|
|
Quote: | Путь к папке содержит пробелы? В параметрах путь стоит в кавычках? |
Путь без пробелов: C:\TempM\. Попробовал даже поставить в кавычки "C:\TempM\" - всё равно копируется в противоположную панель, а не в папку по-умолчанию.
Quote: | Если вручную пытаться переместить файлы по F6 -> F2, что происходит? |
Файл как и положено перемещается.
Может проблемы из-за особенностей работы новых Script Helper ActiveX for TC beta12 и totalcmd v.7.55?
Система у меня WinXP Pro SP3 rus. В фоне среди прочих постоянно работают nncron, ahk, менеджер буфера - clcl. |
|
Back to top |
|
 |
Batya

Joined: 15 Dec 2004 Posts: 2229 Location: Москва, Россия
|
(Separately) Posted: Tue Oct 19, 2010 18:19 Post subject: |
|
|
KarS
Для проверки добавь перед строкой
Code: | ' Открываем в противоположной папке TC целевую папку |
строку
Code: | MsgBox """" & TC & """ /o /s /r=""" & TargetDir & """" |
Что выдаёт? Скопируй текст сообщения (Ctrl+C в диалоговом окне); вставь в текстовый редактор; скопируй только строку сообщения; вставь в командную строку TC; выполни. Текущий каталог поменялся?
KarS wrote: | заменил в 47 строке "cm_MoveOnly". При проверке скрипт скопировал |
KarS wrote: | Если вручную пытаться переместить файлы по F6 -> F2, что происходит?
Файл как и положено перемещается. |
Я подозреваю, что ты запускаешь не тот скрипт, что исправляешь. _________________ Нет, я не сплю. Я просто медленно моргаю. |
|
Back to top |
|
 |
KarS

Joined: 21 Apr 2006 Posts: 102 Location: г. Абакан
|
(Separately) Posted: Tue Oct 19, 2010 18:28 Post subject: |
|
|
Выполнил, всё, что предписали... Каталог поменялся на желаемый "C:\TempM\" |
|
Back to top |
|
 |
Batya

Joined: 15 Dec 2004 Posts: 2229 Location: Москва, Россия
|
(Separately) Posted: Tue Oct 19, 2010 23:23 Post subject: |
|
|
KarS
Хм... Значит, всё-таки, работает. Но тогда непонятны причины ошибочного поведения.
Попробуй в следующем куске кода
Code: | ' Открываем в противоположной папке TC целевую папку
WSH.Run TC & " /o /s /r=""" & TargetDir & """", 7, True
' Небольшая пауза
WScript.Sleep 100 | поменять 100 на бОльшее значение. Начни с заведомо очень большого - 5000 (5 секунд). Если так будет работать, можно экспериментальным путём уменьшать.
А вот причину копирования вместо перемещения я даже предположить не могу. _________________ Нет, я не сплю. Я просто медленно моргаю. |
|
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
|