В этой теме Вы можете высказывать идеи о каких-либо кнопках. Вы можете описать какую хотелось бы иметь кнопку и возможно найдутся те, кто подскажет как её сделать. Большая просьба чётко описывать задачу, от этого будет зависеть качество её решений
Может можно это сделать это с помощью каких-нибудь скриптов, файлов "*.vbs", батников?
Я просто не понимаю зачем, если то что дали работает.
Если вы сами хотите писать скрипты , батники и разобраться в них , то это уже другая тема: 1. Тут есть несколько вариантов со скриптами http://tc-image.3dn.ru/forum/11-558-1 2. Тут есть примеры скриптов разной направленности http://tc-image.3dn.ru/forum/3 ---- если вы хотите, чтобы вам дали конкретный пример на батнике или на скрипте vbs ... , то я уже давно этим не занимаюсь - все и так есть в TCIMG
Да, можно использовать всё вами перечисленное, если вас что-то конкретное интересует, то выкладывайте скрипт или ещё что-то и люди помогут. Нужна конкретика, четко поставленная задача.
Я просто не понимаю зачем, если то что дали работает.
С надстройками пока не хотелось бы связываться. Мне из них требуется 10% - 20% - функционала, а файлов, меню, панелей от них море... Хотя может я пока заблуждаюсь... И двигаюсь не в том направлении.
И потихоньку въеду в функционал надстройки и начну использовать её полноценно.
Просто хотел посмотреть, может есть другие способы.
По предложенным вами ссылкам вроде ничего не нашёл подходящего для меня... Хотя может не заметил...
Цитатаchip642 ()
Нужна конкретика, четко поставленная задача.
Что вы имеете ввиду под "чёткостью"? Сформулировать каким способом я предполагаю реализовывать описанный мной функционал? "vbs" или "bat"? В принципе хотелось посмотреть то и то.
В общем если у кого будет время и желание дать совет, то см. информацию в спойлере. А самому удалось продвинуться только до этого уровня (см. спойлер):
Результат: [wavygreen]работает[/wavygreen] Ошибки: - [wavygreen]нет[/wavygreen] Вопрос: как занести в код путь получателя. Ведь он постоянно будет меняться?
*** *** *** *** Файл - "vbs" *** Создал файл - fold_fl_copy.vbs Разместил здесь %COMMANDER_PATH%\vbs\fold_fl_copy.vbs Пока запускаю двойным кликом мышки.
Результат: [wavyred]не работает[/wavyred] Ошибки: - [wavyred]есть[/wavyred] - ссылка - http://prntscr.com/hc69u4 Вопрос: - 1. Как устранить ошибку? 2. При открытии файла "fold_fl_copy.vbs" в "Notepad" файл нормально отображается. При открытии в "AkelPad_Image_32" некорректно отображается кодировка. Стоит или на это обращать внимание, если да то как исправить? Скрин кодировки - http://prntscr.com/hc6gps
Код [spoiler]
Код
'============================ VBS ============================ ' —копировать в активный каталог файл с путЄм из буфера обмена ' ”словие: путь запуска - пустой '============================================================= Dim WSH : Set WSH = CreateObject("WScript.Shell")
With WSH On Error Resume Next A = .RegRead(R) : If A > 0 Or Err.Number <> 0 Then .RegWrite R, 0, "REG_DWORD" Path = "\\Server\e\Total\папка_1\ИСТОЧНИК" If A > 0 Then .RegWrite R, A, "REG_DWORD" On Error Goto 0 End With
Title = "Копирование файла из буфера обмена" If Path = "" Then MsgBox "Буфер обмена не содержит текстовых данных!", 48, Title : WScript.Quit Set ShA = CreateObject("Shell.Application") With CreateObject("Scripting.FileSystemObject") Set Items = ShA.NameSpace(.GetParentFolderName(Path)).Items ' Set Items = ShA.NameSpace(Path).Items ' Set Items = ShA.NameSpace.GetParentFolderName(Path).Items Name = .GetFileName(Path) : Items.Filter 9408, Name End With If Items.Count Then CD = WSH.CurrentDirectory ShA.NameSpace(CD).CopyHere Items, 280 WSH.Run """%COMMANDER_EXE%"" /O /S /A /L=""" & CD & "\" & Name & """" Else MsgBox "‘айла " & Path & " не существует!", 48, Title End If
[/spoiler]
Вопрос. 1. Andrey_A, вопросы такого характера в будущем следует выкладывать в соответствующих темах? Т.е. я на кнопку хочу повесить скрипт, то вопрос нужно публиковать здесь: "ЗАКАЗ СКРИПТОВ" - http://tc-image.3dn.ru/forum/3-59-21 Но она вроде закрыта..
Сообщение отредактировал sergio1188 - Суббота, 18.11.2017, 22:25
как занести в код путь получателя. Ведь он постоянно будет меняться?
Никак, это написанный батник, обычным запуском параметры в него никак не передать.
Вы используете в батнике команду XCOPY , которая копирует содержимое папки "источник", а первоначально вы ставили задачу так:
Цитата
Папка "получатель" - папка куда нужно копировать папку "источник" со всем её содержимым.
То бишь и саму папку "источник" тоже.
Забудьте о батниках и т. д., пользуйтесь TCIMG. Вот вам пример вашего же батника с командой XCOPY , но запущенной при помощи TCIMG, куда я могу передавать любые параметры.
Код
TOTALCMD#BAR#DATA %COMMANDER_PATH%\TCIMG.exe watch=1 sends="%P" cmdbt=xcopy~~\\Server\e\Total\папка_1\ИСТОЧНИК~~GLOBALSENDS<1>~~/Z~~/E %COMMANDER_PATH%\WCMICONS.dll,12 Копировать в активную панель папку ИСТОЧНИК
-1
По скорости один в один с батником, зачем же тогда мучаться. Я вам дал кнопку в этом посте , так вот, проведя тест с большим количеством файлов копируемого, сравнив с командой XCOPY , у меня кнопка с командой TCIMG произвела копирование в два раза быстрее, чем с командой XCOPY. ------------------ Предоставленныей вами файл .vbs и не будет работать, он работает только с копированием одного файла (НЕ папки), чей путь расположен в буфере обмена. Если вы открывали этот скрипт в редакторе, то должны были заметить.
chip642, В общем вроде сделал рабочее решение без "TCIMG.exe".
Код
TOTALCMD#BAR#DATA xcopy /cehqrkxyz "\\Server\e\Total\папка_1\ИСТОЧНИК" "%P" wpdshext.dll,4 Копировать содержимое сетевого каталога в активный
1
В принципе то, что я и хотел увидеть пока (на данном историческом этапе).
Только пока недостаток: это постоянно выскакивающая консоли при нажатии кнопки.
Вопросы 1. Недостаток моего решение - тоже низкая скорость? 2. Как можно отключить чтобы при нажатии кнопки не выскакивала консоль? 3. Если не сложно, в 2-х словах опишите как вы меряете скорость выполнения команды? 4. Всё таки, зачем использовать "watch"? Обычному пользователю он наверное не нужен... Или я не что-то не понимаю?
PS Если вопросы бестолковые, прошу делать поправку на мою неопытность. Ещё раз спасибо, за консультацию.
Нужна кнопка которая выделяет файлы в режиме(Ctrl+B) из текста в буфере, в буфере только название файлов с расширением, без всяких путей. Стандартная функция тотала и фукнция TCIMG "marks=list<clpget>" работает не так как надо, они выделяют не все из списка, а только что находится в корне.
Пример:
Структура файлов и папок: i:\12\TestPort.exe i:\12\ISO\southpark6.gif i:\12\Games\southpark6.gif i:\12\Network\pixel.size.htm i:\12\Music\1.txt i:\12\sell.txt i:\12\Music\versions_1.6.2.zip
Списко через Ctrl+B: TestPort.exe southpark6.gif southpark6.gif pixel.size.htm 1.txt sell.txt versions_1.6.2.zip
Нужно выделить: TestPort.exe southpark6.gif sell.txt versions_1.6.2.zip
p.s. если попадаются одинаковые по названию файлы, то выделять нужно все.
Протестируйте кнопку ниже. Выделяем нужные папки и применяем кнопку, команда сама применит Ctrl+B.
Код
TOTALCMD#BAR#DATA %COMMANDER_PATH%\TCIMG.exe slist=cliplist||inline<!!|!!> slist=FOLDC<%L//1//-1//GLOBALSLIST<1>> tcimg=$cm2046 marks=$GLOBALSLIST WCMICONS.dll,1 В выделенных каталогах найти файлы из списка (имена с расширениями) в буфере обмена, показать файлы выделенных папок без подкаталогов и выделить все найденные файлы
Вам надо просто озвучить всю вашу задачу, чтобы можно было подобрать решение.
Цитатаingerard ()
можно еще такой вариант, чтоб без автонажатия Ctrl+B?
А как же выделять будем без Ctrl+B. Без Ctrl+B пролучится, что я только найду полные пути файлов из списка буфера обмена в содержимом выделенных папок. Вот поэтому и говорю нужна четко поставленная задача, что нужно получить.
Вообще-то, можно так, с учетом того, что уже включен режим Ctrl+B, будет работать с любой активной панелью.
Код
TOTALCMD#BAR#DATA %COMMANDER_PATH%\TCIMG.exe slist=cliplist||inline<!!|!!> slist=PS<"%P"//1//-1//GLOBALSLIST<1>> marks=$GLOBALSLIST WCMICONS.dll,1 В активной панели выделить файлы по списку (имена с расширениями) из буфера обмена
chip642, у меня есть список файлов которые надо выделить и есть одна из предполагаемых папок в которую надо зайти, перейти в режим без каталогов и после чего вызвать команду которая выделит эти файлы если они там есть.
Вот что надо, еще раз спасибо.
Сообщение отредактировал ingerard - Понедельник, 27.11.2017, 00:02
На всякий случай, чтобы визуально видеть всё выделенное, когда файлов много, можно оставить в панели только выделенное.
Код
TOTALCMD#BAR#DATA %COMMANDER_PATH%\TCIMG.exe slist=cliplist||inline<!!|!!> slist=PS<"%P"//1//-1//GLOBALSLIST<1>> marks=$GLOBALSLIST||after<1> WCMICONS.dll,1 В активной панели выделить файлы по списку (имена с расширениями) из буфера обмена и оставить только выделенное