PlaySound C++ имеет только голосовой звон

Программу можно скомпилировать и запустить, однако музыка — это не то, что я ожидаю. Каждый раз, когда я запускаю программу, она издает только звук "динь". Когда я комментирую строку PlaySound(TEXT("bgm.mp3"), NULL, SND_FILENAME);, звук "динь" не выходит. Файл и файл mp3 находятся по одному и тому же пути. Что не так с моим кодом? Большое спасибо.


person Pai    schedule 02.05.2016    source источник
comment
Если PlaySound не может найти указанный файл, он использует звук системного события по умолчанию (см. документацию). Кроме того, будет ли воспроизводиться указанный файл или нет, также зависит от установленного драйвера устройства waveform-audio.   -  person Biruk Abebe    schedule 02.05.2016
comment
MP3 может не поддерживаться PlaySound. Что делать, если вы используете файл WAV вместо MP3?   -  person MikeCAT    schedule 02.05.2016
comment
Путь \\UON2\Users05\3\psyjc3\MyProfile\Desktop\now\part1-v1\part1\part1\src\bgm.wav, меняю mp3 на wav, но если вставить в ТЕКСТ(\\ UON2\Users05\3\psyjc3\MyProfile\Desktop\now\part1-v1\part1\part1\src\bgm.wav) до сих пор слышен звон.   -  person Pai    schedule 02.05.2016
comment
Вы конвертировали файл или просто переименовали его?   -  person molbdnilo    schedule 02.05.2016
comment
См. ‹stackoverflow. com/questions/2049825/›, если вам нужно иметь возможность воспроизводить файлы MP3. Кроме того, помните, что при использовании обратной косой черты в строках C++ ее можно использовать как часть escape-последовательности, поэтому вам понадобится что-то более похожее на TEXT(\\\\UON2\\Users05\\3\\psyjc3\\MyProfile\\ Рабочий стол\\now\\part1-v1\\part1\\part1\\src\\bgm.‌​wav).   -  person Aenimated1    schedule 02.05.2016
comment
Если мой файл и bgm.wav находятся на одном пути, нужно ли мне указывать глобальный путь к моему wav-файлу?   -  person Pai    schedule 02.05.2016
comment
PlaySound сначала ищет текущий каталог, поэтому, если файл находится в каталоге, из которого запускается приложение, нет, вам не нужно будет указывать глобальный путь. Однако иногда не очевидно, какой каталог является текущим при использовании IDE.   -  person Aenimated1    schedule 02.05.2016
comment
@Pai Как уже отмечалось, эти одиночные обратные косые черты в вашей строке неверны. Разве компилятор не предупреждал вас о неизвестных escape-последовательностях?   -  person PaulMcKenzie    schedule 02.05.2016
comment
Спасибо всем, ребята, я исправил эту ошибку. :-) молбднило отвечает на мой вопрос, я его просто переименовал и файл не конвертировал в wav. :-(   -  person Pai    schedule 02.05.2016
comment
Что не так с моим кодом? - Вы используете относительные пути. Это никогда не заканчивается хорошо.   -  person IInspectable    schedule 02.05.2016