我一直在测试声音,我注意到PlaySound正在阻止,即它等待直到声音播放完毕才返回。

#include <iostream>
#include <Windows.h>
#include <mmsystem.h>

int main()
{
    PlaySound("E:/Downloads/eb_sfx_archive/brainshock.wav", 0, SND_FILENAME);
    std::cout << "this sound is cool";
    Sleep (500);
    std::cout << "\nmeh... not really";
    return 0;
}

该代码播放声音,但是它等待输出“此声音很酷”,直到声音播放完毕为止。我如何才能做到这一点呢?

最佳答案

异步播放声音:

PlaySound(L"E:\\Downloads\\eb_sfx_archive\\brainshock.wav", NULL, SND_ASYNC);

MSDN文档中:

关于c++ - 使PlaySound不受阻碍,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41421313/

10-13 08:13