Как воспроизвести звук, который обычно винда воспроизводит при появлении тултипа в трее (эдакий "бульк")? Понятно, что это какой-то алиас вообще, но какой?
Куда копать вообще?
Здравствуйте, Carc, Вы писали:
C>Как воспроизвести звук, который обычно винда воспроизводит при появлении тултипа в трее (эдакий "бульк")? Понятно, что это какой-то алиас вообще, но какой? C>Куда копать вообще?
Копать необходимо в сторону PlaySound. Находим описание флага SND_ALIAS:
SND_ALIAS The pszSound parameter is a system-event alias in the registry or the WIN.INI file. Do not use with either SND_FILENAME or SND_RESOURCE.
А ниже пример:
The following example plays a system-event sound:
PlaySound(TEXT("SystemStart"), NULL, SND_ALIAS);
Открываем Панель управления — Звуки и аудиоустройства — Звуки, ищем звук "Системное уведомление". То, что нужно. Запускаем regedit.exe, ищем в реестре "SystemStart", рядом находим описание алиаса — "SystemNotification":
Здравствуйте, Carc, Вы писали:
C>Как воспроизвести звук, который обычно винда воспроизводит при появлении тултипа в трее (эдакий "бульк")? Понятно, что это какой-то алиас вообще, но какой? C>Куда копать вообще?
Здравствуйте, LGB, Вы писали:
LGB>Здравствуйте, Carc, Вы писали:
C>>Как воспроизвести звук, который обычно винда воспроизводит при появлении тултипа в трее (эдакий "бульк")? Понятно, что это какой-то алиас вообще, но какой? C>>Куда копать вообще?
LGB>MessageBeep?
Насколько я понимаю, MessageBeep способен воспроизводить весьма ограниченное число звуков (те, которые можно настроить для MessageBox) и только!?!
Здравствуйте, Carc, Вы писали:
C>>>Как воспроизвести звук, который обычно винда воспроизводит при появлении тултипа в трее (эдакий "бульк")? Понятно, что это какой-то алиас вообще, но какой? C>>>Куда копать вообще?
LGB>>MessageBeep? C>Насколько я понимаю, MessageBeep способен воспроизводить весьма ограниченное число звуков (те, которые можно настроить для MessageBox) и только!?!
Здравствуйте, kero, Вы писали:
K>Здравствуйте, Carc, Вы писали:
C>>>>Как воспроизвести звук, который обычно винда воспроизводит при появлении тултипа в трее (эдакий "бульк")? Понятно, что это какой-то алиас вообще, но какой? C>>>>Куда копать вообще?
LGB>>>MessageBeep? C>>Насколько я понимаю, MessageBeep способен воспроизводить весьма ограниченное число звуков (те, которые можно настроить для MessageBox) и только!?!
K>Beep по-круче: частота и длительность.
А "композитора" где взять!?!
И потом, ну не городить же огород из-за такой мелочи? Делов-то "булькнуть" таким же "ушлепком" как и SystemNotification: ибо у меня именно схожий, но собственный ballon tooltip и всплывает (правда, не в трее). Мысль простая: тот же звук, к которому пользователь уже и так привык, тот же самый — стандартный.
Здравствуйте, Carc, Вы писали:
C>А "композитора" где взять!?! C>И потом, ну не городить же огород из-за такой мелочи? Делов-то "булькнуть" таким же "ушлепком" как и SystemNotification: ибо у меня именно схожий, но собственный ballon tooltip и всплывает (правда, не в трее). Мысль простая: тот же звук, к которому пользователь уже и так привык, тот же самый — стандартный.
А если тупо в HKEY_CURRENT_USER\AppEvents\Schemes\Apps\.Default\ найти путь к нужному wav-файлу и сыграть его через PlaySound?
Здравствуйте, LGB, Вы писали:
LGB>Здравствуйте, Carc, Вы писали:
C>>А "композитора" где взять!?! C>>И потом, ну не городить же огород из-за такой мелочи? Делов-то "булькнуть" таким же "ушлепком" как и SystemNotification: ибо у меня именно схожий, но собственный ballon tooltip и всплывает (правда, не в трее). Мысль простая: тот же звук, к которому пользователь уже и так привык, тот же самый — стандартный.
LGB>А если тупо в HKEY_CURRENT_USER\AppEvents\Schemes\Apps\.Default\ найти путь к нужному wav-файлу и сыграть его через PlaySound?
LGB>Вот, например, товарищ советует: LGB>http://www.codeproject.com/KB/audio-video/windowssoundevents.aspx
А вместо всего этого кода ExpandEnvironmentStrings не подойдет? Там не надо проценты вырезать, а потом заменять подстроку в исходной строке. Все должно поэкспандиться за нас
LGB>А вместо всего этого кода ExpandEnvironmentStrings не подойдет? Там не надо проценты вырезать, а потом заменять подстроку в исходной строке. Все должно поэкспандиться за нас
Да, пожалуй Вы правы! Чего-то я "перевелосипедил" в пылу написания тестов.
Конечно нужно юзать ExpandEnvironmentStrings!