2016-05-02 8 views
0

Вот мой код:Пусть C++ PlaySound работать с основной функцией одновременно

DemoAMain oMain; 
    char buf[1024]; 
    PlaySound(TEXT("bgm.wav"), NULL, SND_FILENAME); 
    sprintf(buf, "My Demonstration Program : Size %d x %d", BASE_SCREEN_WIDTH, BASE_SCREEN_HEIGHT); 
    iResult = oMain.Initialise(buf, BASE_SCREEN_WIDTH, BASE_SCREEN_HEIGHT, "Cornerstone Regular.ttf", 24); 
    iResult = oMain.MainLoop(); 
    oMain.Deinitialise(); 
    return iResult; 

Существует проблема, только если PlaySound закончил это музыка, может продолжить программу. Что делать, чтобы позволить PlaySound работать со следующим кодом одновременно? Большое спасибо.

ответ

2

Вы можете сделать это, добавив SND_ASYNC флаг третий аргумент, как это:

PlaySound(TEXT("bgm.wav"), NULL, SND_FILENAME | SND_ASYNC);