如何在MASM32中循环声音文件

时间:2015-06-06 11:32:13

标签: winapi audio assembly masm masm32

我正在组装游戏,我使用PlaySound()在游戏中播放声音文件。

PlaySound()函数播放声音文件,直到声音文件结束(直到达到完整的声音文件长度)。有没有办法循环该函数,以便在它到达文件末尾后不会停止?

我正在使用Windows 8 API,并在Visual Studio 2013中编写。

1 个答案:

答案 0 :(得分:2)

如果您查看PlaySound的{​​{3}},可以看到fdwSound有很多标记。您正在寻找的标记是SND_LOOPSND_ASYNC

这样的事情(请原谅任何错误。我的masm有点生疏):

mov eax, SND_FILENAME  ;; pszSound is a file name
or eax, SND_LOOP       ;; Play in a loop
or eax, SND_ASYNC      ;; Play in the background
invoke PlaySound, addr sound_file, 0, eax