PlaySound 代码如下
#include <Windows.h>
#include <mmsystem.h>
#include <iostream>
#include <stdlib.h>
#include <time.h>
#include <assert.h>
#pragma comment(lib,"WinMM.Lib")
using namespace std;
BOOL MByteToWChar(LPCSTR lpcszStr, LPWSTR lpwszStr, DWORD dwSize)
{
// Get the required size of the buffer that receives the Unicode
// string.
DWORD dwMinSize;
dwMinSize = MultiByteToWideChar(CP_ACP, 0, lpcszStr, -1, NULL, 0);
assert(dwSize >= dwMinSize);
// Convert headers from ASCII to Unicode.
MultiByteToWideChar(CP_ACP, 0, lpcszStr, -1, lpwszStr, dwMinSize);
return TRUE;
}
int main(int argc, char** argv)
{
string s = "D:\\MyDesktop\\6.wav";// "bt.wav";
wchar_t wText[30] = { 0 };
MByteToWChar(s.c_str(), wText, sizeof(wText) / sizeof(wText[0]));
PlaySound(wText, NULL, SND_FILENAME | SND_SYNC);
system("pause");
return 0;
}
如果要停止当前的音乐,将PlaySound的第一个参数改为NULL即可。PlaySound(NULL, NULL, SND_FILENAME | SND_SYNC);
缺点
只能播放wav文件,对于其他的文件,需要寻找其他方法。