Обсуждение темы "Обмен кнопками"

Обсуждение вопросов автоматизации Total Commander с помощью сторонних программ и скриптовых технологий.

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

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

Сообщение Flasher »

bbcby
Подразумевается один -i "%%i".
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
bbcby
Сообщения: 58
Зарегистрирован: Вс мар 05, 2006 17:50

Сообщение bbcby »

Так не получается.

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

Сообщение Flasher »

Так, может, лучше подкурсорный файл сопоставлять с константами, а не выделять все 6 файлов? А то можно и лишнего выделить.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
bbcby
Сообщения: 58
Зарегистрирован: Вс мар 05, 2006 17:50

Сообщение bbcby »

А как это сделать? Константы в именах файлов всегда такие, выделено красным:
EN.L.wav EN.R.wav EN.C.wav EN.LFE.wav EN.SL.wav EN.SR.wav
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

%O вмеcто EN для этой же строки. Можно и %E вместо wav. cmd и цикл тут не нужен.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
kgb
Сообщения: 4
Зарегистрирован: Пн апр 03, 2017 10:44

Проверка PDF-файлов на валидность

Сообщение kgb »

Есть следующая утилита для проверки валидности PDF-файлов https://github.com/qpdf/qpdf/releases. Нужна кнопка, которая бы запускала данную утилиту с параметром --check для проверки всех PDF-файлов в текущей папке. Заранее признателен.
Skif_off
Сообщения: 1252
Зарегистрирован: Ср ноя 28, 2012 13:44

Сообщение Skif_off »

Похоже, вывод qpdf может быть очень большим, тогда, наверное, проще проверять код завершения qpdf, а детально смотреть уже по отдельности. Если батником, то что-то вроде

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

@echo off
setlocal EnableDelayedExpansion

for /f "tokens=*" %%i in ('dir *.pdf /a:-d /b') do (
    echo Check: %%i
    "path\to\qpdf.exe" --check "%%i" > nul 2>&1
    if !errorlevel! == 0 (
        echo   Result: ok
    ) else (
        if !errorlevel! == 2 echo   Result: error^(s^)
        if !errorlevel! == 3 echo   Result: warning^(s^)
    )
)

pause
(нужно заменить path\to\qpdf.exe на правильный путь).
Команда - путь к qpdf.cmd, путь запуска оставить пустым.

Можно сохранить список файлов с ошибками, например, в _with_error.txt в текущей папке:

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

        if !errorlevel! == 2 (
                  echo   Result: error^(s^)
                  echo %%i >> _with_error.txt
              )
Аватара пользователя
MFS90
Сообщения: 31
Зарегистрирован: Вт янв 15, 2019 23:38
Контактная информация:

Сообщение MFS90 »

Здравствуйте.

Использую SOX команду в виде кнопки в TC

%ComSpec% /q/c for %f in

(%S) do "%%COMMANDER_PATH%%\Utils\SoX\sox.exe" %%f "tmp_%%~f" speed 2 gain -n -10 remix - dcshift 0&&move /y "tmp_%%~f" %%f

Подскажите мне, как мне добавить функцию прописывания в имени файла суффикса? Например, в случае этого конкретного кода нужен суффикс "+12" (без кавычек само собой). Научите, пожалуйста, камрады!
Аватара пользователя
Monarch-LFV
Сообщения: 360
Зарегистрирован: Пн июл 22, 2019 13:20

Сообщение Monarch-LFV »

MFS90
Утилиту SOX не пользовал, но судя по синтаксису командной строки будет так:

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

%ComSpec% /q/c for %f in 

(%S) do "%%COMMANDER_PATH%%\Utils\SoX\sox.exe" %%f "%%~dpnf+12%%~xf" speed 2 gain -n -10 remix - dcshift 0
Пробуйте.
Ps. Только к теме это не имеет никакого отношения, ждите реакции модератора.
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

MFS90
К теме по ИГП в "Общих вопросах", как верно выше замечено, вопрос не имеет абсолютно никакого отношения. Нетрудно выяснить, что для подобных дел есть темы и с запросами по кнопкам, и с ними самими. Перенесено с замечанием за оффтоп.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Nick
Сообщения: 107
Зарегистрирован: Пт дек 26, 2014 17:11

Сообщение Nick »

Здравствуйте!

Есть кнопка вида:

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

TOTALCMD#BAR#DATA
%ComSpec% /c set P="%COMMANDER_PATH%\Plugins\ARC\Rar.exe" a -ep1 -m5 -o -ts -ibck -hp
&&If Not Exist %N\ (call %%P%% "%O.rar" %S) Else call %%P%% %N.rar %S
%COMMANDER_PATH%\Soft\WinRAR\WinRAR.exe
Архивирование файлов с запросом пароля в текущую панель

1
-1
Подскажите, что нужно поменять, чтобы архивирование производилось в противоположную панель (с проверкой существования архива, и если он есть, то архивирование не производилось бы)?
Аватара пользователя
Monarch-LFV
Сообщения: 360
Зарегистрирован: Пн июл 22, 2019 13:20

Сообщение Monarch-LFV »

Nick
Нужно изменить на "%T%O.rar" в проверке и на выходящих файлах, а чтобы архивирование не производилось при сущестовании файла нужно просто убрать все от else и до конца.

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

TOTALCMD#BAR#DATA
%ComSpec% /c set P="%COMMANDER_PATH%\Plugins\ARC\Rar.exe" a -ep1 -m5 -o -ts -ibck -hp
&&If Not Exist "%T%O.rar" (call %%P%% "%T%O.rar" %S)
%COMMANDER_PATH%\Soft\WinRAR\WinRAR.exe
Архивирование файлов с запросом пароля в неактивную панель

1
-1 
И еще, думаю здесь не совсем уместно %S, так как он будет архивировать все выделенные файлы с именем файла под курсором. То есть архив с выделенными файлами может уже существовать в противоположной панели с одним именем, а если вы сдвинете курсор, то он при проверке обнаружит несоответствие имен и снова заархивирует те же файлы, но уже с другим именем. Для однозначности лучше использовать файл под курсором и только:

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

TOTALCMD#BAR#DATA
%ComSpec% /c set P="%COMMANDER_PATH%\Plugins\ARC\Rar.exe" a -ep1 -m5 -o -ts -ibck -hp
&&If Not Exist "%T%O.rar" (call %%P%% "%T%O.rar" %N)
%COMMANDER_PATH%\Soft\WinRAR\WinRAR.exe
Архивирование файла под курсором с запросом пароля в неактивную панель

1
-1 
Nick
Сообщения: 107
Зарегистрирован: Пт дек 26, 2014 17:11

Сообщение Nick »

Monarch-LFV
Большое Вам спасибо за кнопку и уточнения!!!
P.S. Мне правда обычно нужно архивировать сразу много файлов, а не только файл под курсором, поэтому скорее всего буду пользоваться пока с %S. Ничего страшного, даже если будет дубляж в некоторых файлах... :)
Аватара пользователя
aLLigator
Сообщения: 167
Зарегистрирован: Чт дек 01, 2011 11:21
Откуда: из тех ворот, что и весь народ...

Сообщение aLLigator »

Прошу помочь с кнопкой на панель инструментов для открытия файла.
Есть файл work.abc на который настроена внутренняя ассоциация ТС (запуск VBS скрипта).
При попытке настройки такой же самой ассоциации со скриптом средствами Windows пишет "Невозможно открыть это приложение на вашем ПК".
Необходимо добавить кнопку на вертикальную панель инструментов для открытия этого файла, но средствами внутренней ассоциации ТС.
Аватара пользователя
imig73
Сообщения: 285
Зарегистрирован: Вт июн 18, 2013 13:21
Откуда: г. Иркутск

Сообщение imig73 »

aLLigator
Я ничего не понял там про abc и какая команда выполняет у вас скрипт и какой скрипт...

Вот кнопка для Powershell которая выполнит любой возможный скрипт под курсором.

TOTALCMD#BAR#DATA
*%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe -NoExit
%p%n
flat_FileIcons.dll,37
Выполнить скрипт под курсором


-1
Ответить