Различия между обработкой параметров

Обсуждение Total Commander. Установка, использование, настройка, решение проблем, скрытые функции. Обсуждение новых версий.

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

Ответить
Аватара пользователя
LonerD
Сообщения: 1174
Зарегистрирован: Вт янв 04, 2011 03:56
Откуда: Макеевка
Контактная информация:

Различия между обработкой параметров

Сообщение LonerD »

Какие различия существуют в обработке параметров на кнопках и пользовательских командах? Где-то они описаны или обсуждаются?

Сколько лет наивно полагал, что одна и та же запись должна работать идентично. :oops: (оттестирую параметры на кнопке, создам пользовательскую команду с теми же параметрами, а потом через некоторое время удивляюсь почему она не работает должным образом, списывая всё на свою невнимательность или изменениях в ОС - ХР...7...10). Наконец подметил, что "что-то не так".
Windows 11 | TC DreamLair eternal pre-α
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

LonerD
А конкретные примеры этого самого "что-то не так" для дальнейшего обсуждения есть?
Даже самая богатая фантазия
Не представит себе наши безобразия.
Аватара пользователя
LonerD
Сообщения: 1174
Зарегистрирован: Вт янв 04, 2011 03:56
Откуда: Макеевка
Контактная информация:

Сообщение 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="?" "?" "?" "?"
Запускаю пользовательскую команду.
Высвечивается окошко Тотала с предложением ввода параметров командной строки

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

" "?" "?" "?
Оказывается, что в данном случае нужно удвоить кавычки в пользовательских командах, чтобы параметры передавались корректно:

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

param=""?" "?" "?" "?""
Как узнать (предположить) о необходимости удвоения кавычек в данном случае (и других случаях)?
Тестировать каждый раз именно пользовательские команды, снова и снова перезапуская Тотал после каждой правки команды - не очень весело (изменить кнопку можно без перезапуска Тотала, потому обычно тестировал всё именно на кнопках).

Чтобы узнать о других примерах и нюансах их возникновения и различий - и была создана тема.
Последний раз редактировалось LonerD Пн апр 15, 2019 15:06, всего редактировалось 1 раз.
Windows 11 | TC DreamLair eternal pre-α
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

LonerD
Эту проблему криворукости уже не раз тут обсуждали. Логично сравнивать эти вещи в рамках диалогов ТС, а не правок кода кнопки и ini.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
LonerD
Сообщения: 1174
Зарегистрирован: Вт янв 04, 2011 03:56
Откуда: Макеевка
Контактная информация:

Сообщение LonerD »

Flasher писал(а):Эту проблему криворукости
То есть нет объяснений почему так реализовано?
Flasher писал(а):уже не раз тут обсуждали.
С кавычками всё время непонятки возникают. Но что именно различия между их записью в кнопке и em-команде - не замечал обсуждений.
Есть какое-то правило "в данном случае работает и так, а в данном случае нужно удваивать"?

И какие-то ещё различия кроме танцев с кавычками есть?
Flasher писал(а):Логично сравнивать эти вещи в рамках диалогов ТС, а не правок кода кнопки и ini.
Не понял. Как узнать рабочий вариант пользовательской команды без правок кода в ini-файле?
Последний раз редактировалось LonerD Пн апр 15, 2019 15:36, всего редактировалось 1 раз.
Windows 11 | TC DreamLair eternal pre-α
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

LonerD
Короче.
LonerD писал(а):И какие-то ещё различия кроме танцев с кавычками есть?
Никаких.
LonerD писал(а):Как узнать рабочий вариант пользовательской команды без правок кода в ini-файле?
Зайти в браузер команд, вестимо. :)
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
LonerD
Сообщения: 1174
Зарегистрирован: Вт янв 04, 2011 03:56
Откуда: Макеевка
Контактная информация:

Сообщение LonerD »

Flasher писал(а):Короче.
Спасибо.
Flasher писал(а):Зайти в браузер команд, вестимо. :)
Интересный вариант. У меня он открывается дольше, чем перезапускается Тотал.
Windows 11 | TC DreamLair eternal pre-α
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

LonerD писал(а):У меня он открывается дольше, чем перезапускается Тотал.
Вот это уже что-то весьма странное. У меня окно появляется моментально, раз так в 50 быстрее перезапуска ТС.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Ответить