Страница 1 из 1
Различия между обработкой параметров
Добавлено: Пн апр 15, 2019 14:24
LonerD
Какие различия существуют в обработке параметров на кнопках и пользовательских командах? Где-то они описаны или обсуждаются?
Сколько лет наивно полагал, что одна и та же запись должна работать идентично.
(оттестирую параметры на кнопке, создам пользовательскую команду с теми же параметрами, а потом через некоторое время удивляюсь почему она не работает должным образом, списывая всё на свою невнимательность или изменениях в ОС - ХР...7...10). Наконец подметил, что "что-то не так".
Добавлено: Пн апр 15, 2019 14:34
Avada
LonerD
А конкретные примеры этого самого "что-то не так" для дальнейшего обсуждения есть?
Добавлено: Пн апр 15, 2019 14:54
LonerD
Avada писал(а):А конкретные примеры этого самого "что-то не так" для дальнейшего обсуждения есть?
Например, из только что подмеченного. Есть у меня скрипт на AutoHotkey (содержимое его не суть важно и мало что скажет в контексте вопроса).
Код: Выделить всё
TOTALCMD#BAR#DATA
"%commander_path%\AutoHotkey.exe" "%commander_path%\Scripts\CreateDirectories.ahk"
"?" "?" "?" "?"
%COMMANDER_EXE%
7-Zip
-1
В качестве параметров в кнопке на панели инструментов указываю следующее:
Всё работает, скрипту в качестве четырёх параметров передаётся четыре знака вопроса.
Создаю пользовательскую команду, добавляю её в меню Тотала.
Код: Выделить всё
[em_CreateDirs]
cmd="%commander_path%\AutoHotkey.exe" "%commander_path%\Scripts\CreateDirectories.ahk"
param="?" "?" "?" "?"
Запускаю пользовательскую команду.
Высвечивается окошко Тотала с предложением ввода параметров командной строки
Оказывается, что в данном случае нужно удвоить кавычки в пользовательских командах, чтобы параметры передавались корректно:
Как узнать (предположить) о необходимости удвоения кавычек в данном случае (и других случаях)?
Тестировать каждый раз именно пользовательские команды, снова и снова перезапуская Тотал после каждой правки команды - не очень весело (изменить кнопку можно без перезапуска Тотала, потому обычно тестировал всё именно на кнопках).
Чтобы узнать о других примерах и нюансах их возникновения и различий - и была создана тема.
Добавлено: Пн апр 15, 2019 15:04
Flasher
LonerD
Эту проблему криворукости уже не раз тут обсуждали. Логично сравнивать эти вещи в рамках диалогов ТС, а не правок кода кнопки и ini.
Добавлено: Пн апр 15, 2019 15:26
LonerD
Flasher писал(а):Эту проблему криворукости
То есть нет объяснений почему так реализовано?
Flasher писал(а):уже не раз тут обсуждали.
С кавычками всё время непонятки возникают. Но что именно различия между их записью в кнопке и em-команде - не замечал обсуждений.
Есть какое-то правило "в данном случае работает и так, а в данном случае нужно удваивать"?
И какие-то ещё различия кроме танцев с кавычками есть?
Flasher писал(а):Логично сравнивать эти вещи в рамках диалогов ТС, а не правок кода кнопки и ini.
Не понял. Как узнать рабочий вариант пользовательской команды без правок кода в ini-файле?
Добавлено: Пн апр 15, 2019 15:31
Flasher
LonerD
Короче.
LonerD писал(а):И какие-то ещё различия кроме танцев с кавычками есть?
Никаких.
LonerD писал(а):Как узнать рабочий вариант пользовательской команды без правок кода в ini-файле?
Зайти в браузер команд, вестимо.

Добавлено: Вт апр 16, 2019 17:07
LonerD
Спасибо.
Flasher писал(а):Зайти в браузер команд, вестимо.

Интересный вариант. У меня он открывается дольше, чем перезапускается Тотал.
Добавлено: Вт апр 16, 2019 17:45
Flasher
LonerD писал(а):У меня он открывается дольше, чем перезапускается Тотал.
Вот это уже что-то весьма странное. У меня окно появляется моментально, раз так в 50 быстрее перезапуска ТС.