• Авторизация


Получение уровня громкости WinAMP'а. 21-10-2007 03:53 к комментариям - к полной версии - понравилось!


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

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

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

[показать]Двое против ветра - Снежинка


Комментарии (2): вверх^

Вы сейчас не можете прокомментировать это сообщение.

Дневник Получение уровня громкости WinAMP'а. | V_exeR - ЛИру-аккаунт | Лента друзей V_exeR / Полная версия Добавить в друзья Страницы: раньше»