解决方案 »

  1.   

    先包含头文件 #include <Vfw.H>
    在项目属性->配置属性->Linker->Input->Additional Dependencies 写入 VFW32.libHWND hMCI;
    CString choose = _T("E:\\MyDocument\\Music\\1.mp3"); //音乐文件的路径  
    hMCI = MCIWndCreate(NULL, NULL,WS_POPUP|MCIWNDF_NOPLAYBAR|MCIWNDF_NOMENU,choose);  
    MCIWndPlay(hMCI); //播放音乐 
    该函数需要:
     #include <mmsystem.h>
     #pragma comment(lib, "WINMM.LIB")
      

  2.   


        char   buf[128];   
        //use   mciSendString()   
        //mciSendString("play   e:\\songs\\把根留住.mp3",buf,sizeof(buf),NULL);   
        //mciSendString("play   e:\\songs\\zhj.mp3",buf,sizeof(buf),NULL);   
        //char   str[128]   =   {0};   
        //int   i   =   0;   
         
        //use   mciSendCommand   
        MCI_OPEN_PARMS   mciOpen;   
        MCIERROR   mciError;   
        //mciOpen.lpstrDeviceType   =   (LPCTSTR)MCI_ALL_DEVICE_ID;   
        //mciOpen.lpstrDeviceType   =   "waveaudio";   //只能播放.wav文件   
        //mciOpen.lpstrDeviceType   =   "avivideo";     //*.avi   
        mciOpen.lpstrDeviceType   =   "mpegvideo";   
        //mciOpen.lpstrDeviceType   =   "sequencer";   
        mciOpen.lpstrElementName   =   "e:\\music\\forever.mp3";   
        //mciOpen.lpstrElementName   =   "e:\\movie\\first.avi";   
        //mciOpen.lpstrElementName   =   "c:\\winnt\\media\\Windows   登录音.wav";   
        mciError   =   mciSendCommand(0,MCI_OPEN,MCI_OPEN_TYPE   |   MCI_OPEN_ELEMENT,(DWORD)&mciOpen);   
        if(mciError)   
        {   
            mciGetErrorString(mciError,buf,128);   
            MessageBox("send MCI_PLAY command failed", "ERROR");    
            return;   
        }   
        UINT   DeviceID   =   mciOpen.wDeviceID   ;   
        MCI_PLAY_PARMS   mciPlay;   
     
        //mciError   =   mciSendCommand(DeviceID,MCI_PLAY,0   ,(DWORD)&mciPlay);  
        //MCI_FROM | MCI_TO | 
        mciError   =   mciSendCommand(DeviceID, MCI_PLAY, MCI_WAIT | MCI_DGV_PLAY_REPEAT, 
            (DWORD)   (LPMCI_PLAY_PARMS)&mciPlay);  //MCI_DGV_PLAY_REPEAT, 要 #include "Digitalv.h"
        if(mciError)   
        { 
            mciGetErrorString(mciError,buf,128);     
            MessageBox("send MCI_PLAY command failed", "ERROR");   
            return;   
        }   
           
     
        /*   
        while(1)   
        {   
        i++;   
        Sleep(1000);   
        }   
        */    
    代码是帮你从其他地方拷来的。路径用相对路径