Страница 2 из 2

Добавлено: Пн ноя 21, 2016 21:43
Flasher
MVV писал(а):Баг зарепортил.
Зря ты в общую кучу всё мешаешь. Я же указал на конкретику:
Flasher писал(а): это баг для %p. Он берёт не общий родительский каталог, а вычленяет его из элемента под курсором
То же и в отношении %s, т.к. связь их даёт только кавычки, но обрабатываются они отдельно друг от друга.

Добавлено: Вт ноя 22, 2016 10:01
MVV
Flasher,
С голым %p у меня всё работает правильно, путь всегда одинаков.

Добавлено: Вт ноя 22, 2016 13:07
Flasher
MVV
Т.е. если ты в режиме DirBranch поставил курсор на файл из одного каталога, вывел %p, потом для файла из другого, то у тебя показывает один путь?

Добавлено: Вт ноя 22, 2016 15:49
MVV
Я тестировал по сценарию, описанному в багрепорте.

Добавлено: Вт ноя 22, 2016 16:03
Flasher
Я пишу про элемент под курсором для разных родителей. Проверь.
Гислер даже до сих пор не въехал.

Добавлено: Вт ноя 22, 2016 16:07
MVV
Положил в каждую вложенную папку по файлу, нажал Ctrl+B в верхней папке, покликал кнопку, везде %p даёт правильный путь к папке файла под курсором. Или что не так?

Добавлено: Вт ноя 22, 2016 16:09
Flasher
Вот именно! Это и есть не так, как должно быть. Должен быть общий каталог, как в случае %P.

Добавлено: Вт ноя 22, 2016 16:15
MVV
А, теперь всё встаёт на свои места. Как раз-таки про это Гислер и ответил, что издавна %p работает именно так, и что менять это он не хочет.

Добавлено: Вт ноя 22, 2016 16:18
Flasher
Бред какой-то. Почему поведение %p должно отличаться от %P? Нездоровая у него локика.
Типа потому, что %n даёт только имя в от отличии от %N?
Ну, поменяет он оба параметра, и что с того? Кому от этого будет хуже? Работоспособность в старых кнопках с %p%n никуда не денется. Зато с %s проблем не будет.
Можно, конечно, подумать, что кто-то использует %n и %p отдельно в режиме DirBranch, но что-то сомнительно, что подобное кому-то требуется.

Добавлено: Вт ноя 22, 2016 17:31
MVV
Мне тоже сомнительно, кто в здравом уме может использовать короткую %n отдельно от %p... Но Гислер порой чересчур консервативен.

Добавлено: Вт ноя 22, 2016 18:31
Flasher
gryja писал(а):Кроме того, параметры командной строки, проставленные после батника рассматриваются не как параметры батника, а как параметры программы NirCMD.
Да, ну конечно? Советую заглянуть с конца в топик "Обмен кнопками" и убедиться в ряде приводимых вариантов. Если что-то не пошло, то можно взять всю запись после execmd в кавычки.
gryja писал(а):Запускать COMMAND.COM без NirCMD я не хочу, так как проблемы всё равно не решаются, а запуск от NirCMD выглядит красивее.
command.com? На WinXP+ она не задействована. Там cmd.exe, как несложно отследить в процессах. А желание скрывать программу одной nircmd не ограничивается, существует масса куда более ёмких вариантов (пример).
MVV писал(а):Но Гислер порой чересчур консервативен.
Этого, увы, не отнять...

Добавлено: Ср ноя 23, 2016 00:46
gryja
Так работает:

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

param="SET "N=N"&"%%COMMANDER_PATH%%\Soft\NirSoft\CompArc.bat" %P%S2 %T%M"
а так не работает:

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

param=""%%COMMANDER_PATH%%\Soft\NirSoft\CompArc.bat" %P%S2 %T%M"
Ну, что-то новенькое. Жаль только, баг не исправит...

Добавлено спустя 9 минут:

Так тоже работает:

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

param="ECHO&"%%COMMANDER_PATH%%\Soft\NirSoft\CompArc.bat" %P%S2 %T%M"
Добавлено спустя 7 минут:

Это частично решит проблему - в слишком длинной строке будет просто обрезаться 3-й путь.

Добавлено: Ср ноя 23, 2016 01:35
MVV
Жаль только, баг не исправит...
Баг с комбинацией %p%s уже исправлен в тотале, который будет опубликован уже сегодня.
Так тоже работает:
Эти нюансы уже могут быть специфичны для nircmd. Точно знаю, что для cmd.exe нужно написать правильную комстроку и взять её снаружи в пару лишних кавычек.
Кстати, ты приводишь фрагменты INI-файла (коим по сути является BAR-файл), там внешние кавычки удаляются функцией чтения - лучше тестируй, редактируя поля в свойствах кнопки, а потом уже смотри в BAR-файле, как они сохранились.
Это частично решит проблему - в слишком длинной строке будет просто обрезаться 3-й путь.
А от этого лекарство уже было названо - %WL.