AIMP Forum
Разное => Архив / Archive => Вопросы (архив) / Questions (archive) => Topic started by: amorphyc on January 24, 2016, 10:39:39
-
Здравствуйте, друзья! Вопрос таков: создал кнопку для для запуска в AIMPе выделенных файлов, по аналогии контекстного меню "воспроизвести в Aimp". Так вот, с параметром C:\Program Files (x86)\AIMP\AIMP.exe /ADD_PLAY "%1" - плеер открывает ВСЮ текущую папку, игнорируя выделения, при параметре C:\Program Files (x86)\AIMP\AIMP.exe /ADD_PLAY "%2" плеер открывает только выделенное, НО только если выделен один объект - файл или папка. При выделении нескольких объектов - плеер запускается пустым. Можно ли научить его правильно понимать выделенные объекты и воспроизводить только то, что требуется?
-
Здравствуйте, друзья! Вопрос таков: создал кнопку для для запуска в AIMPе выделенных файлов, по аналогии контекстного меню "воспроизвести в Aimp". Так вот, с параметром C:\Program Files (x86)\AIMP\AIMP.exe /ADD_PLAY "%1" - плеер открывает ВСЮ текущую папку, игнорируя выделения, при параметре C:\Program Files (x86)\AIMP\AIMP.exe /ADD_PLAY "%2" плеер открывает только выделенное, НО только если выделен один объект - файл или папка. При выделении нескольких объектов - плеер запускается пустым. Можно ли научить его правильно понимать выделенные объекты и воспроизводить только то, что требуется?
А что реально ему передается в командную строку в каждом из случаев?
-
А что реально ему передается в командную строку в каждом из случаев?
А вот тут я вообще далёк от этого! Я просто взял эти значения из F.A.Q.
-
Скажем так - интересует, какая команда отправляется из контекстного меню, при выделении нескольких песен или папок, и нажатии на "Воспроизвести в AIMP"
-
Скажем так - интересует, какая команда отправляется из контекстного меню, при выделении нескольких песен или папок, и нажатии на "Воспроизвести в AIMP"
Общение происходит не через командную строку.
Попробуйте так:
C:\Program Files (x86)\AIMP\AIMP.exe /ADD_PLAY %1
-
Я пробовал. Если написать как у Вас - без кавычек, то ничего не происходит. На форуме, в FAQ сказано, что параметр нужно заключать в двойные кавычки. Тогда срабатывет, но открывает, как я и писал, всю текущую папку (ту, где мы находимся) и не обращает внимания на выделенное.
-
Я пробовал. Если написать как у Вас - без кавычек, то ничего не происходит. На форуме, в FAQ сказано, что параметр нужно заключать в двойные кавычки. Тогда срабатывет, но открывает, как я и писал, всю текущую папку (ту, где мы находимся) и не обращает внимания на выделенное.
Так, понял в чем дело. %1 - это первый файл, %2 - второй. Вам же нужно передать все файлы (см. http://stackoverflow.com/questions/357315/get-list-of-passed-arguments-in-windows-batch-script-bat )
-
Здравствуйте! Спасибо за помощь, но моих знаний очень мало, чтоб понять это всё ! ??? Перепробовал показанные там команды, но не добился результата, к сожалению! Может, найдутся люди, кто сможет найти эту лазейку?
-
Здравствуйте! Спасибо за помощь, но моих знаний очень мало, чтоб понять это всё ! ??? Перепробовал показанные там команды, но не добился результата, к сожалению! Может, найдутся люди, кто сможет найти эту лазейку?
а %* не работает что ли?
т.е. AIMP.exe /ADD_PLAY %*
?
-
а %* не работает что ли?
т.е. AIMP.exe /ADD_PLAY %*
?
Нет, к сожалению. Видимо, всё-же там нельзя таким путем это сделать.
-
А как сделали кнопку в панели?
И чем не устраивает стандартная кнопка "Воспроизвести выделенное"?
-
А как сделали кнопку в панели?
И чем не устраивает стандартная кнопка "Воспроизвести выделенное"?
Это программа ClassicShell. Я после Windows XP привык к кнопкам, мне они удобнее. Выделил - удалил одной кнопкой. Скопировал - вставил. Плюс - свои кнопки можно создавать.
-
Это программа ClassicShell
Справку надо было читать к этой тулзе. Разработчики почему-то решили изменить стандартное поведение - в их прогремме %1, %2 и т.д. это не привычные параметры командной строки винды, а специфические для этой программы значения. Например %1 это текущий каталог (!).
Вам же нужен %3 - файл в темпе со списком выделенных файлов.
Без промежуточного батника сценарий невыполним.
Вам нужно создать батник, в котором вы распарсите темповый файл и позовёте АИМП.
-
В папке профиля Аимпа (...\AppData\Roaming\AIMP\) создайте файл play.bat и вставьте код:
@ECHO OFF
CHCP 1251>NUL
SETLOCAL EnableExtensions EnableDelayedExpansion
SET list=%1
SET list=!list:"=!
MOVE /y "!list!" "!list!.m3u"
SET list=!list!.m3u
START "" "%PROGRAMFILES(x86)%\AIMP\AIMP.exe" /ADD_PLAY "!list!"
PING -n 11 127.0.0.1>nul
DEL \q "!list!"
В ClassicShell в настройках кнопки пропишите команду:
%USERPROFILE%\AppData\Roaming\AIMP\play.bat "%3"
(https://www.aimp.ru/forum/index.php?action=dlattach;topic=51790.0;attach=46032)
В настройках Аимпа выставите опцию Плейлист -> Добавление файлов -> Открытие файлов из внешних приложений -> Действие по умолчанию -> Добавить в текущий плейлист
И уберите галочку с Открывать плейлисты в новых вкладках
-
Справку надо было читать к этой тулзе. Разработчики почему-то решили изменить стандартное поведение - в их прогремме %1, %2 и т.д. это не привычные параметры командной строки винды, а специфические для этой программы значения. Например %1 это текущий каталог (!).
Вам же нужен %3 - файл в темпе со списком выделенных файлов.
Без промежуточного батника сценарий невыполним.
Вам нужно создать батник, в котором вы распарсите темповый файл и позовёте АИМП.
Спасибо большое! Вы оказались правы!
-
В папке профиля Аимпа (...\AppData\Roaming\AIMP\) создайте файл play.bat и вставьте код:
В ClassicShell в настройках кнопки пропишите команду:
%USERPROFILE%\AppData\Roaming\AIMP\play.bat "%3"
УРАААА! Огромное Вам спасибо!!! Всё отлично работает! Плюс за помощь и понимание!! :)