AskParam - диалог запроса параметров командной строки

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

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

Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

addhaloka,
OFF
Это всё из-за тупорылых эвристик. Возможно также, что какие-то иконки использовались известными троянами, потому у антивирусов на них особенно "стоит"...
addhaloka
Сообщения: 169
Зарегистрирован: Вт ноя 09, 2010 16:09

Сообщение addhaloka »

MVV
OFF
Не только с троянами, а с патчами, кейгенами и т. п. - такое ощущение, что разработчики/копирайтеры некоторых программ как-то сотрудничают в этом плане с производителями антивирусов. Помнится, когда-то выкладывал на рутрекере одну программу - к ней был кейген, на который очень ругались антивири - я снял с него прот и упаковал другим (вообще так делать неправильно и некрасиво, но тогда особо не в теме был :roll:) - на вирустотале чисто, но уже через сутки опять сильная ругань. А у других программ (видимо у тех, где разрабы не озабочены коперастией) кряки годами используются и на вт чисто.
Но то, что даже сигнатуры иконок и картинок в базы добавляют, малость шокировало. :)
Dimsok
Сообщения: 664
Зарегистрирован: Вс авг 17, 2014 00:45

Сообщение Dimsok »

Почему-то некоторые кнопки не сразу срабатывают. Появляется окно консольное и пропадает. Иногда со второго или третьего раза команда запускается, и ещё заметил, что чаще, когда медленнее нажимать. Это что, аргументы не успевают передаваться? Вот к примеру с кнопкой для изменения разрешения картинок с ImageMagick:

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

TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Plugins\exe\AskParam.exe /c"Resize pictures" /u"48x48" /t"64x64" /t"128x128" /t"400x400" /t"1024x768" /t"1280x1024" /c(1)"I like it" /c(2)"No, thanks" /p"Choose size" /u"yes:" /t"no:!" /c(1)"Resize" /c(2)"No, thanks" /p(h)"Preserve proportions?" /s"2" %ComSpec%
/c "for /f "usebackq delims=" %%%%# in (`type "%WF"`) do "%%%%COMMANDER_PATH%%%%\Plugins\wlx\SVGView\ImageMagick_x32\convert.exe" -resize %%1%%2 "%P%%%%#" "%t%%%%~n#.%E"
WCMICONS.dll,56
Resize pictures (Imagemagick)


-1
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Не пойму, что именно наблюдается. Аргументы не могут "не успеть передаться", т.к. все аргументы передаются в API-функцию непосредственно перед её запуском. А что мне тут видится наиболее вероятным - что пока cmd.exe запускается, тотал уже радостно удаляет временный список файлов, т.к. запущенная им AskParam отработала... Для лечения таких проблем в AskParam есть ключ /w.
Dimsok
Сообщения: 664
Зарегистрирован: Вс авг 17, 2014 00:45

Сообщение Dimsok »

Что-то не пойму, а собственные параметры TC не могут передаваться?

/c"Pack files to the single arch" /u"7z" /t"zip" /c(1)"Next" /c(2)"No, thanks" /p"Choose type" /u"%T" /t"%P" /c(1)"Pack" /c(2)"No, thanks" /p"In which panel?" /s"2" /w %ComSpec%
/c "for /f "usebackq delims=" %%%%# in (`type "%WF"`) do "c:\Program Files\7-Zip\7z.exe" a -mx=9 "%%2%%%%~n#.%%1" "%%%%#"

Тут от %T толку никакого нет, всё равно в текущую панель всё делается.

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

И под использование с vbs никак не приспособить? К примеру:

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

TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Plugins\exe\AskParam.exe /c"Pack files" /u"7z" /t"zip" /c(1)"Pack" /c(2)"No, thanks" /p"Choose type" /s"2"
"c:\Program Files\Total Commander\Utils\WHS\multiarch uni.vbs" %WL "%T" %%1 "" -mx=9
WCMICONS.dll,30
Multiarch


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

И ещё я так понял, при передаче через комстроку для всех команд, идущих после & надо заново назначать параметры askparam?

/c"Rearchivate files" /u"7z" /t"zip" /c(1)"Rearch" /c(2)"No, thanks" /p"Choose type" /s"2" /w %ComSpec%
/c "for /f "usebackq delims=" %%%%# in (`type "%WF"`) do "c:\Program Files\7-Zip\7z.exe" x "%%%%#" -o%%%%tmp%%%%\Rearch && "c:\Program Files\7-Zip\7z.exe" a -mx=9 "%T%%%%~n#.%%1" %%%%tmp%%%%\Rearch\* && rd /s /q %%%%tmp%%%%\Rearch

Срабатывает только первая часть, архивации не происходит.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

/c"Pack files to the single arch" /u"7z" /t"zip" /c(1)"Next" /c(2)"No, thanks" /p"Choose type" /u"%T" /t"%P" /c(1)"Pack" /c(2)"No, thanks" /p"In which panel?" /s"2" /w %ComSpec%
Хотя тут явно не указано, в каком поле кнопки это написано (поле команды или поле параметров), такой микс не будет корректно работать ни в каком из них. В поле команды допустимо использование переменных окружения, но недопустимы %-параметры, в то время как в поле параметров наоборот допустимы %-параметры, но недопустимы переменные окружения (хотя их можно попытаться передать запускаемому приложению в двойных %, если оно умеет их раскрывать).
И под использование с vbs никак не приспособить? К примеру:
Попробуй запускать VBS правильно, указывая программу, которая будет его запускать:

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

"%%SystemRoot%%\System32\wscript.exe" "c:\Program Files\Total Commander\Utils\WHS\multiarch uni.vbs" %WL "%T" %%1 "" -mx=9
И ещё я так понял, при передаче через комстроку для всех команд, идущих после & надо заново назначать параметры askparam?
AskParam запускает 1 процесс, который получает заданную комстроку, по всей длине которой раскрываются %-параметры, и наследует окружение с переменными AskParamX. Остальное - проблемы запускаемого процесса. В данном случае это cmd.exe, поэтому скорее всего в его параметрах что-то указано не так. Попробуй запустить cmd.exe с такими параметрами явно, с кнопки без AskParam. Что-то мне подсказывает, что не всё в ней хорошо:

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

Команда: C:\Windows\system32\cmd.exe
Параметры: /c "for /f "usebackq delims=" %%# in (`type "%WF"`) do "c:\Program Files\7-Zip\7z.exe" x "%%#" -o%%tmp%%\Rearch && "c:\Program Files\7-Zip\7z.exe" a -mx=9 "%T%%~n#.7z" %%tmp%%\Rearch\* && rd /s /q %%tmp%%\Rearch
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

MVV писал(а):Попробуй запускать VBS правильно, указывая программу
Кто тебе сказал, что не указывать программу неправильно? vbs - это прежде всего исполняемый файл. Ничего там указывать не нужно.

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

TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Plugins\exe\AskParam.exe /c"Pack files" /u"7z" /t"zip" /c(1)"Pack" /c(2)"No, thanks" /p"Choose type" /s"2" "%COMMANDER_PATH%\Utils\WHS\multiarch uni.vbs"
%WL "%T" %%1 "" -mx9
WCMICONS.dll,30
Multiarch
Всё должно работать без вопросов.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

vbs - это прежде всего исполняемый файл.
Это неверно. VBS - это документ, для исполнения которого необходима ассоциированная с ним исполняемая программа.
Всё должно работать без вопросов.
Возможно. Я не использую VBS, поэтому не знаю точно.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

MVV писал(а):Это неверно. VBS - это документ, для исполнения которого необходима ассоциированная с ним исполняемая программа.
Как раз - верно (1, 2, 3 и т.д.). Тут нет противоречия. Исполняемость никуда при этом не девается.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Dimsok
Сообщения: 664
Зарегистрирован: Вс авг 17, 2014 00:45

Сообщение Dimsok »

Всё должно работать без вопросов.
Line:59
Char:1
Error:File not found.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Dimsok
AskParam тут при чём? Если есть какие-то проблемы со скриптом, то спрашивай по месту выкладки с учётом положений памятки.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Dimsok
Сообщения: 664
Зарегистрирован: Вс авг 17, 2014 00:45

Сообщение Dimsok »

Без askparam скрипт этот нормально же отрабатывает.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Если верить ошибке, то есть сомнения, что AP тут вообще может какую-то роль играть.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Dimsok
Сообщения: 664
Зарегистрирован: Вс авг 17, 2014 00:45

Сообщение Dimsok »

MVV
А нельзя добавить возможность назначать свою иконку вместо вопрос. знака?
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Думаю, можно добавить...
Ответить