Как получить значения переменных %playlist_number% %playlist_name% в PSS

Список разделов foobar2000 Секреты foobar2000

Описание: Кнопочки, конфиги, секреты, советы.

Сообщение #1 Squirrel » 22.12.2014, 00:28

Собственно сабж ни одна, ни другая переменные не определены что ли в PSS :evil: . Есть ли варианты получить их значения?
Нужно все это для вывода строки %playlist_number%/%playlist_total% %playlist_name%, получаю ?/? ?.
foobar с офсайта
Squirrel
Автор темы
Репутация: 0
С нами: 9 лет 3 месяца

Сообщение #2 kgena_ua » 22.12.2014, 13:15

Squirrel,
Спойлер
Информация о плейлисте

Следующие функции и поля применимы в скриптах для плейлиста.
Специальные поля
%isplaying%

Возвращает «1», если файл в текущий момент проигрывается и пустую строку в ином случае.

Старая версия %_isplaying% остаётся допустимой.
%ispaused%

Возвращает «1», если проигрывание приостановлено (на паузе) и пустую строку в ином случае.

Старая версия %_ispaused% остаётся допустимой.
%list_index%

Возвращает дополненный нулями индекс элемента в плейлисте. Первый элемент имеет индекс 1.

Смотрите также %playlist_number%.

Старая версия %_playlist_number% остаётся допустимой.
%list_total%

Возвращает количество элементов в плейлисте.

Старая версия %_playlist_total% остаётся допустимой.
%playlist_name%

Возвращает имя плейлиста, в котором содержится элемент.

Старая версия %_playlist_name% остаётся допустимой.
Безымянный.png
Безымянный.png (7.1 КБ) Просмотров: 2811
kgena_ua M
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 10 лет 11 месяцев

Сообщение #3 Aum » 22.12.2014, 21:38

Squirrel:не определены что ли в PSS
Да, так и есть, не знает он их. Вашу инфу придется выводить через WHS
Aum M
Аватара
Репутация: 20
С нами: 14 лет

Сообщение #4 Squirrel » 22.12.2014, 23:51

Aum,а скриптик на вроде helloworld не подкините или сайт какой, а то везде вольюм да сикбары
Squirrel
Автор темы
Репутация: 0
С нами: 9 лет 3 месяца

Сообщение #5 kgena_ua » 23.12.2014, 23:04

Например для playlist name.
1. Создаем папку settings.
2. Создаем (блокнотом без расширения) в папке файл plist_name_.
3. В панели wsh прописываем такой скрипт:
Код: Выделить всё
var fso = new ActiveXObject("Scripting.FileSystemObject");
var set_path = fb.ProfilePath + "\\settings\\";

function on_playlist_switch() {
    plist_idx = fb.ActivePlaylist;
    plist_name = fb.GetPlaylistName(plist_idx);
    fso.deleteFile( set_path + "plist_name_" + "*" );
    fso.CreateTextFile( set_path + "plist_name_" + plist_name);
    RefreshPSS();
}

function RefreshPSS() {
    if (fb.IsPlaying || fb.IsPaused) {   
        fb.RunMainMenuCommand("Playback/Play or Pause");
        fb.RunMainMenuCommand("Playback/Play or Pause");
    } else {
        fb.RunMainMenuCommand("Playback/Play");
        fb.RunMainMenuCommand("Playback/Stop");
    }
}
4. в PSS читаем значение таким скриптом:
Код: Выделить всё
$puts(file,$findfile(%ps_foobar2000_path%\settings\plist_name_*))
$puts(plist_name,$right($get(file),$sub($len($get(file)),$strrchr($get(file),'\'),11)))
kgena_ua M
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 10 лет 11 месяцев

Сообщение #6 Squirrel » 29.12.2014, 02:23

хм... не хочет создавать объект ActiveX и все тут отваливается с
Код: Выделить всё
Error: WSH Panel Mod ({blablabla}): Ошибка выполнения Microsoft JScript:
Невозможно создание объекта сервером программирования объектов
File: <main>
Ln: 1, Col: 1
<source text only available at compile time>

wscript -regserver не помогло
папки %appdata%\foobar200 нет (портабельная установка)
даже фубар переустановил
больше решений не нашел. Может копать в сторону сервисов винды(может отключено чего) :think:

UPD: во я дурак SAFEMODE не отключил же :evil: :evil: :evil:
Squirrel
Автор темы
Репутация: 0
С нами: 9 лет 3 месяца


Вернуться в Секреты foobar2000