Получение уровня громкости WinAMP'а.

Воскресенье, 21 Октября 2007 г. 03:53 + в цитатник
Вспомнил забавный случай. При разработке «Весны-2006» оказалось, что получить программным путем уровень громкости от WinAMP штатными средствами невозможно. То есть совсем. А мне необходимо было ползунок громкости в плагине синхронизировать с громкостью самого плеера. Перерыл весь SDK к WinAMP, думал упустил где-то. Нет, действительно - никак. Остальное - что угодно: получить имя проигрываемого файла, его длительность, нажата ли кнопочка shuffle или repeat, нажать любую кнопку WinAMP'а... А получить, какая у него сейчас громкость - ни в какую. Пол-инета перерыл, пока нашел недокументированный способ:

Volume:=-666;
SoundVolume:=SendMessage(HWNDWinamp, WM_USER, Volume, IPC_SETVOLUME);

То есть сначала программно выставить громкость в -666 (естевственно, она не выставится), а в «ответ» получить реальную громкость. Причем я специально проверял: с другими значениями Volume такого эффекта нет.
Вот это надо было так приколоться, а? Шутники...
Рубрики:  смайл
рабочее

-hunter-   обратиться по имени Воскресенье, 21 Октября 2007 г. 22:54 (ссылка)
Шаманство! ))) Может -666 какая-то константа, которая функцию заставляет громкость возвращать. Но число зверское)))
Ответить С цитатой В цитатник
V_exeR   обратиться по имени Понедельник, 22 Октября 2007 г. 08:52 (ссылка)
-hunter-, так и есть, это недокументированная функция и «пасхалка» в одном флаконе. А число... Число АНТИзверское, оно ж с минусом! :D

Двое против ветра - Снежинка
Ответить С цитатой В цитатник
 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку