[util] TC Menu: вопросы, ответы, предложения

Обсуждение только плагинов и утилит для Total Commander.

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

borisin
Сообщения: 26
Зарегистрирован: Пт ноя 03, 2006 16:25

Сообщение borisin »

Точно, удвоил и все заработало. Спасибо.
borisin
Сообщения: 26
Зарегистрирован: Пт ноя 03, 2006 16:25

Сообщение borisin »

Не работает ни одна добавленная кнопка типа:

TOTALCMD#BAR#DATA
cmd /c md
%T%N
shell32.dll ,3
Одноимённый каталог в соседней панели

1
-1

Появляется окно с ошибкой: Missing parameter '%N' (Missing parameter '%O')
или:
TCMenu MFC Application - oбнapужeнa oшибкa. Пpилoжeниe
будeт зaкpытo.
VadiMGP
Сообщения: 1625
Зарегистрирован: Ср мар 21, 2007 20:58

Сообщение VadiMGP »

Во-первых Worros прав, в ридми написано, что %COMMANDER_PATH% поддерживается. Но в поле параметров % надо удваивать.
Do-вторых, можно и "Program Files" писать, но любое имя с пробелами всегда должно быть в кавычках.
"C:\Program Files\Total Commander\default.bar".
borisin
Сообщения: 26
Зарегистрирован: Пт ноя 03, 2006 16:25

Сообщение borisin »

C эти я согласился, %COMMANDER_PATH% TCMenu понимает. Но не работают кнопки вида: см.выше
VadiMGP
Сообщения: 1625
Зарегистрирован: Ср мар 21, 2007 20:58

Сообщение VadiMGP »

Появляется окно с ошибкой: Missing parameter '%N' (Missing parameter '%O')
Снова RTFM. В кнопке запуска TCMenu в поле параметров добавь "-N %N -T %T -O %O"
borisin
Сообщения: 26
Зарегистрирован: Пт ноя 03, 2006 16:25

Сообщение borisin »

Извиняюсь, но в синтаксисе этих команд я не очень понимаю.
Покажите пожалуйста на конкретном примере, что надо прописать в поле параметров, чтобы эти кнопки заработали:

TOTALCMD#BAR#DATA
cmd /c md
%T%N
shell32.dll ,3
Одноимённый каталог в соседней панели

1
-1
-----------------------------------
TOTALCMD#BAR#DATA
"C:\Program Files\WinRAR\WinRAR.exe"
a -m5 "%O.rar" ""%N""
C:\Program Files\WinRAR\WinRAR.exe
Упаковать текущий файл


-1
-----------------------------------
TOTALCMD#BAR#DATA
"C:\Program Files\WinRAR\WinRAR.exe"
x %N "%O"\
C:\Program Files\WinRAR\WinRAR.exe
Извлечь в папку с именем архива
-----------------------------------------
TOTALCMD#BAR#DATA
cmd.exe /c @echo off &
for /f "delims=" %%i in (%F) do fsutil file createnew "%T%%i" 0 > nul
C:\WINDOWS\system32\shell32.dll,84
копии выделенных файлов нулевого размера


-1
VadiMGP
Сообщения: 1625
Зарегистрирован: Ср мар 21, 2007 20:58

Сообщение VadiMGP »

Ты путаешь между кнопкой запуска TCMenu и кнопками из тулбара, который передается TCMenu для обработки. Кнопки, которые ты привел находятся в каком-то твоем тулбаре(допустим, mytoolbar.bar) и с ними все в порядке. Прописывать надо в той кнопке, которая запускает TCMenu и которую, наверно, ты добавил в default.bar. В ней указан в параметрах этот самый тулбар - mytoolbar.bar. Вот в кнопку запуска TCMenu и надо добавить "-N %N -T %T -O %O".
В итоге в default.bar должна появиться кнопка
-----------------------------------------
TOTALCMD#BAR#DATA
D:\wincmd\plugins\TCMenu.exe
D:\WINCMD\mytoolbar.bar -N %N -T %T -O %O
wciconex.dll,1
title
D:\WINCMD\

-1
borisin
Сообщения: 26
Зарегистрирован: Пт ноя 03, 2006 16:25

Сообщение borisin »

Вот в кнопку запуска TCMenu и надо добавить "-N %N -T %T -O %O"

Сделал так. Не помогло.
VadiMGP
Сообщения: 1625
Зарегистрирован: Ср мар 21, 2007 20:58

Сообщение VadiMGP »

Тогда давай подробный отчет. Для начала кидай сюда кнопку запуска TCMenu и .bar файл.
И скажи на какой кнопке получаешь сообщение "Missing parameter %N", а на какой "TCMenu MFC Application - oбнapужeнa oшибкa. Пpилoжeниe будeт зaкpытo." И на каком файле стоит курсор TC в момент запуска TCMenu.
borisin
Сообщения: 26
Зарегистрирован: Пт ноя 03, 2006 16:25

Сообщение borisin »

Попробовал еще раз, все тоже самое.

TOTALCMD#BAR#DATA
C:\wincmd\TCMenu\TCMenu.exe
C:\wincmd\TCMenu\bar.bar -N %N -T %T -O %O
C:\wincmd\TCMenu\TCMenu.exe
TCMenu
C:\wincmd\TCMenu\

-1
-------------------------------------
bar.bar

[Buttonbar]
Buttoncount=5
button1=wcmicons.dll,15
cmd1=C:\Program Files\wincmd\default.bar
button2=shell32.dll ,3
cmd2=cmd /c md
param2=%T%N
menu2=Одноимённый каталог в соседней панели
iconic2=1
button3=C:\wincmd\WCMICONS.DLL,30
cmd3=""C:\Program Files\WinRAR\WinRAR.exe" "
param3=a -m5 "%O.rar" ""%N""
menu3=Упаковать текущий файл
button4=C:\wincmd\WCMICONS.DLL,31
cmd4=""C:\Program Files\WinRAR\WinRAR.exe" "
param4=x %N "%O"\
menu4=Извлечь в папку с именем архива
button5=C:\WINDOWS\system32\shell32.dll,54
cmd5=cmd.exe /c @echo off &
param5=for /f "delims=" %%i in (%F) do fsutil file createnew "%T%%i" 0 > nul
menu5=копии выделенных файлов нулевого размера
---------------------------------------------------------------------------
- курсор стоит на папке Temp, в TCMenu кликаю по кнопке "Одноимённый каталог в соседней панели" Выскакивает сообщение "TCMenu MFC Application - oбнapужeнa oшибкa. Пpилoжeниe будeт зaкpытo."

- курсор на файле KMPlayer.rar, в TCMenu кликаю по кнопке "Извлечь в папку с именем архива" Получаю сообщение "Cannot run "C:\Program Files\WinRAR\WinRAR.exe"

- проверил также на кнопке "копии выделенных файлов нулевого размера", курсор был на файле KMPlayer.rar. Получил сообщение: Missing parameter '%F'

Все эти кнопки с самого bar.bar работают.
(Total Commander v. 7.0 rc1)
VadiMGP
Сообщения: 1625
Зарегистрирован: Ср мар 21, 2007 20:58

Сообщение VadiMGP »

Да, богатый файл. :) Ну, поехали.

1. Одноимённый каталог в соседней панели
Здесь проблема в том, что параметр для cmd оказался разорванным - часть в поле команды, часть в параметрах. Перенеси все параметры в одно поле. Кстати, надо бы выяснить как ведет себя команда md когда %T%N будет содержать пробелы. Может потребоваться кавычки поставить, я не проверял.
----------------------------
TOTALCMD#BAR#DATA
cmd
/c md %T%N
shell32.dll ,3
Одноимённый каталог в соседней панели

1
-1
----------------------------

2. Извлечь в папку с именем архива
Во-первых, в конце команды, после кавычек, есть пробелы. Я могу в следующей версии их скипнуть, конечно, но пока - убери.
Во-вторых, я советую всегда использовать либо полные пути к файлам, либо явно указывать в какой директории выполнять команду.
Ведь TCmenu и TC это разные процессы и текущие директории у них могут различаться.
----------------------------
TOTALCMD#BAR#DATA
"C:\Program Files\WinRAR\WinRAR.exe"
x "%P%N" "%P%O\"
C:\wincmd\WCMICONS.DLL,31
Извлечь в папку с именем архива


-1
----------------------------------------

3. Копии выделенных файлов нулевого размера
Ну, первое, понятно - снова параметры в одно поле. Второе - %F. Это коммандерный параметр и его, как и ранее добаленный %P, надо тоже добавить в кнопку запуска TCMenu.
------------------------------------
TOTALCMD#BAR#DATA
C:\wincmd\TCMenu\TCMenu.exe
C:\wincmd\TCMenu\bar.bar -N %N -T %T -O %O -P %P -F %F
C:\wincmd\TCMenu\TCMenu.exe
TCMenu
C:\wincmd\TCMenu\

-1
-------------------------------------
Вот, примерно, так.
borisin
Сообщения: 26
Зарегистрирован: Пт ноя 03, 2006 16:25

Сообщение borisin »

VadiMGP спасибо, что пытались помочь, но ничего все-равно не работает. А если модифицировать команды в самих кнопках, то они перестают работать как надо.
Да, богатый файл. :) Ну, поехали.
Файл конечно не богатый, :wink: но я просто добавил несколько кнопок, чтобы протестить как работает программа. (что изменилось бы, если кнопок я добавлю больше, с этими то проблему не решили)
А кнопок полно, есть специальная тема: http://forum.wincmd.ru/viewtopic.php?t=1220
Но скорее всего большинство из них работать не будут. :cry:
VadiMGP
Сообщения: 1625
Зарегистрирован: Ср мар 21, 2007 20:58

Сообщение VadiMGP »

но ничего все-равно не работает.
А поподробнее? Так ни одна кнопка и не заработала? Все осталось без изменеий? Странно, у меня все заработало. Я же не просто так отписался, я проверил перед тем как писать.
Файл конечно не богатый,
Богатый в том смысле, что в каждой кнопке своя закавыка была. :)
Но скорее всего большинство из них работать не будут.
Большинство-то, я думаю, как раз работать будут, но многие надо подправлять. Понятно, что подправлять уже готовую кнопку жутко бесит, но что я тут могу поделать? Обработка у меня и TC разная. Я Гислеру много раз предлагал решить эту проблему раз и навсегда. Его стандартный ответ - "Да, да, да. Надо бы. Но потом". И вот это "потом" тянется уже который год.

В общем, если хочешь - можем продолжить, мне не в лом.
Аватара пользователя
funduk
Сообщения: 1515
Зарегистрирован: Вт авг 16, 2005 16:00
Откуда: Санкт-Петербург

Сообщение funduk »

borisin писал(а):А если модифицировать команды в самих кнопках, то они перестают работать как надо.
Чего-чего имелось в виду? :?
borisin
Сообщения: 26
Зарегистрирован: Пт ноя 03, 2006 16:25

Сообщение borisin »

Имелось в виду:
Во-первых, в конце команды, после кавычек, есть пробелы. Я могу в следующей версии их скипнуть, конечно, но пока - убери.
Если убрать пробел, кнопка перестает работать.
Ответить