View previous topic :: View next topic |
Author |
Message |
jentoso
Joined: 20 Dec 2007 Posts: 348
|
(Separately) Posted: Fri Mar 01, 2013 15:23 Post subject: |
|
|
MVV, то есть /r работает с уже составленным заранее списком? _________________ TC 11.03 combo, Windows 10 x64 |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Fri Mar 01, 2013 16:18 Post subject: |
|
|
jentoso,
Список составляется с помощью указания нескольких команд /t или /u перед каждой командой /p. Если перед запросом очередного параметра режим очистки выключен, список не очищается, что позволяет делать несколько запросов с одинаковыми списками. Пример:
Code: | AskParam /r- /tDebug /uRelease /pParam1: /r /pParam2: /tWin32 /tx64 /pParam3: |
При запросе Param1 варианты будут Debug и Release. При запросе Param2 - тоже они, т.к. команда /pParam1: не очистила список за собой (режим очистки отключён). А при запросе Param3 в списке вариантов уже не будет Debug и Release, т.к. режим очистки включён. Если поиграть с этим, думаю, вполне можно понять. Когда режим очистки включён, список очищается после запроса каждого параметра (как раньше). Когда выключен - значения в списке накапливаются.
Возможно, добавлю какой-нибудь параметр типа /r1 для однократной очистки (типа, указывать всегда перед /p, если надо очистить список). _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
jentoso
Joined: 20 Dec 2007 Posts: 348
|
(Separately) Posted: Sat Mar 02, 2013 10:32 Post subject: |
|
|
MVV, возможно сделать для для параметров /t /u комментарии? Попробую объяснить на примере. Сделал пользовательские комнады
Code: | [em_WinRAR_UnPack]
button=%commander_path%\Icons\custom.icl,9
cmd=%COMMANDER_PATH%\AskParam.exe
param=/c"Извлечь из архива" /t%T%O\ /u%O\ /p"Путь" %%COMMANDER_PATH%%\Utils\WinRAR\WinRAR.exe X -cfg- -ibck -kb -or -- %N "%%1"
menu=Распаковать WinRAR'ом |
Теперь в выпадающем списке, показывается путь куда распаковать архив, в текущей панели или противоположной:
Хотелось бы иметь возможность, чтобы отображались надписи "В текущей панели", "В противоположной", а под ними подразумевались заданные параметры, но в тоже время, если выбран например параметр "В противоположной", можно было его изменить в ручную. _________________ TC 11.03 combo, Windows 10 x64 |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Sat Mar 02, 2013 12:28 Post subject: |
|
|
А порядок их следования разве ничего не говорит? Первый - текущая, и т.п. И потом, толку с фразы "В противоположной", если для незначительного изменения пути (скажем, распаковать в поддиректорию 1 или в директорию уровнем чуть выше) придётся его полностью вписывать, убирая бесполезное "В противоположной". Путаницы будет куда больше.
Ничто не запрещает написать батник, который будет вызываться через AskParam, и который будет заменять "В противоположной" на путь, если так хочется. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
jentoso
Joined: 20 Dec 2007 Posts: 348
|
(Separately) Posted: Sat Mar 02, 2013 18:00 Post subject: |
|
|
Quote: | А порядок их следования разве ничего не говорит? |
Конечно порядок для себя самого понятен, но другие могут не понять.
Quote: | толку с фразы "В противоположной" |
Вместо "В противоположной" пользователь мог бы написать любой коммент. Я имел ввиду /t"X -cfg- -ibck -kb -or -- %N", а пользователь не знает что сделает этот параметр, но к нему будет коммент, например /tc"Распаковка архива в фоновом режиме".
Хорошо, я просто спросил о данной возможности _________________ TC 11.03 combo, Windows 10 x64 |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Sat Mar 02, 2013 20:27 Post subject: |
|
|
Можно же батник вызвать, который будет проверять, содержит ли этот параметр строку "Распаковка архива в фоновом режиме", и подставлять сложный набор параметров. Тем более, можно запускать батник в скрытом виде, чтобы не было черного окна. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
|
Back to top |
|
|
jentoso
Joined: 20 Dec 2007 Posts: 348
|
(Separately) Posted: Sat Mar 09, 2013 00:35 Post subject: |
|
|
MVV, не первый раз приходится уточнять о новых введения. Вот и на сей раз параметр /r! не совсем понятен. _________________ TC 11.03 combo, Windows 10 x64 |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Sat Mar 09, 2013 16:05 Post subject: |
|
|
Ну он как раз для упрощения работы с очисткой списка введён. Приведенный выше пример, но с использованием нового /r!:
Code: | AskParam /r- /tDebug /uRelease /pParam1: /pParam2: /r! /tWin32 /tx64 /pParam3: |
Удобство в том, что очистка происходит непосредственно в том месте, где указан /r!, и ровно 1 раз, а не после ближайшего /p (для следующей очистки нужно указывать /r! еще раз). Т.е., запросили параметр, почистили список вручную - и давай заполнять новыми элементами.
Найду время, допишу Readme, параметры будут объясняться подробнее. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
HA3APET
Joined: 22 Feb 2010 Posts: 151
|
(Separately) Posted: Fri Jun 14, 2013 16:44 Post subject: |
|
|
MVV
Спасибо за программу, но я в ней совсем запутался. Приведи пожалуйста пример для двух параметров. У меня вот такая задача:
Code: | netsh wlan set hostednetwork mode=allow ssid="SoftAP" key="88888888" keyUsage=persistent |
то есть надо чтобы сначала вышел диалог для названия SSID, затем диалог на ввод ключа KEY |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Fri Jun 14, 2013 19:23 Post subject: |
|
|
Что-то вроде:
Code: | AskParam /c"SSID" /t"SoftAP" /p"Введите SSID:" /c"Key" /t"88888888" /p"Введите ключ:" netsh wlan set hostednetwork mode=allow ssid="%1" key="%2" keyUsage=persistent |
Каждый ключ /p - это очередной запрос параметра, к первому потом обращение как к %1, ко второму - как к %2 и т.д.
Если запускать из батника или кнопки панели тотала, проценты надо удвоить.
В параметрах /t указывается предлагаемое значение, можно указать там свои (или вообще убрать, чтобы поле ввода было пустым). Можно указывать несколько /t подряд, чтобы был списочек предлагаемых значений (примеры выше). _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
LonerD
Joined: 04 Jan 2011 Posts: 1168 Location: Донецк
|
(Separately) Posted: Fri Oct 11, 2013 21:45 Post subject: |
|
|
Цель - отобразить окошко для ввода параметров (одного или нескольких через пробел) вручную.
На примере Nconvert (консольная утилита конвертирования изображений).
Работающий вариант реализации:
Code: | [em_Nconvert]
cmd=%commander_path%\Utilities\DreamLair\Nconvert\Nconvert.exe
param=? %P%S |
Минус этого метода в том, что в появляющемся окошке для ввода параметров перечислены все передаваемые программе файлы.
Этого можно избежать с помощью AskParam.
Сумел дойти только до такого решения:
Code: | [em_Nconvert_]
cmd=%commander_path%\Plugins\exe\AskParam.exe
param=/c"Nconvert: Image graphics converter" /p"Enter parameters" /s0 "%%commander_path%%\Utilities\DreamLair\Nconvert\Nconvert.exe" " " "%%1" %P%S |
Но оно оказалось неработающим.
Например ввожу в окне AskParam "-out png" (без кавычек) для пересохранения файла в формате png, а файл просто пересохраняется в исходном формате. Такое впечатление, что передаётся параметр до пробела, а всё что после пробела (-out), а png - отсекается.
А как же правильно тогда записать? _________________ Win11 x64 Eng | TC DreamLair eternal pre-α |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Fri Oct 11, 2013 22:11 Post subject: |
|
|
Не понял, какая цель у параметра-пробела. Он по синтаксису там точно нужен? Какой синтаксис должен быть у nconvert?
Чтобы посмотреть, что именно передается программе, можно, например, сделать так:
Code: | [em_Nconvert_]
cmd=%commander_path%\Plugins\exe\AskParam.exe
param=/c"Nconvert: Image graphics converter" /p"Enter parameters" cmd.exe /k echo "%%commander_path%%\Utilities\DreamLair\Nconvert\Nconvert.exe" " " "%%1" %P%S |
Кстати, обычно, если ключ и его параметр разделяются пробелом, они не заключаются в кавычки (т.е. надо просто %%1, а не "%%1").
Если ключ -out есть всегда, и меняется только его параметр, имеет смысл его захардкодить и вводить только тип (можно даже накидать несколько типов в выпадающий список).
Code: | ... /tpng /tjpg /tgif /p"Enter output type:" ... -out %%1 |
_________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
LonerD
Joined: 04 Jan 2011 Posts: 1168 Location: Донецк
|
(Separately) Posted: Fri Oct 11, 2013 23:35 Post subject: |
|
|
Quote: | Не понял, какая цель у параметра-пробела. |
Чтобы не нужно было вводить этот пробел в окне ввода AskParam. Если нет пробела, то Nconvert.exe и параметр слипались, получается Nconvert.exe-out и вообще ничего не происходит.
Quote: | Чтобы посмотреть, что именно передается программе, можно, например, сделать так |
Только в предложенном варианте с cmd.exe надо ещё проценты учетверять: %%%%commander_path%%%%
Quote: | Кстати, обычно, если ключ и его параметр разделяются пробелом, они не заключаются в кавычки (т.е. надо просто %%1, а не "%%1"). |
Спасибо, да, в этом и была проблема. Если убрать кавычки, то и доп.пробел прописывать не нужно. Рабочий вариант:
Code: | [em_Nconvert_]
cmd=%commander_path%\Plugins\exe\AskParam.exe
param=/c"Nconvert: Image graphics converter" /p"Enter parameters" /s0 "%%commander_path%%\Utilities\DreamLair\Nconvert\Nconvert.exe" %%1 %P%S |
_________________ Win11 x64 Eng | TC DreamLair eternal pre-α
Last edited by LonerD on Sat Oct 12, 2013 16:06; edited 1 time in total |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Sat Oct 12, 2013 14:54 Post subject: |
|
|
Quote: | Если нет пробела, то Nconvert.exe и параметр слипались, получается Nconvert.exe-out и вообще ничего не происходит. |
AskParam не трогает строку параметров, лишь подставляет текст вместо %%d, пробелы пропадать из-за нее не могут.
Quote: | Если убрать кавычки, то и доп.пробел прописывать не нужно. |
Во, другое дело.
Но вообще странно, что пустой параметр мог как-то помочь в этом. Серия пробелов не в кавычках - это разделитель между параметрами, а пробел внутри кавычек - это часть этого параметра, соответственно, этот пробел программа обрабатывает не как разделитель, а как параметр. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|