mcisendcommand播放音乐堆栈调用异常

问题遇到的现象和发生背景

mcisendcommand播放音乐堆栈调用异常

用代码块功能插入代码,请勿粘贴截图
if (mciOpen.wDeviceID)  //打开过设备就将其关闭
    {
        Close();
    }
    mciOpen.lpstrDeviceType = NULL;
    mciOpen.lpstrElementName = lpFilenNme;

    if (mciSendCommand(NULL,MCI_OPEN,MCI_DEVTYPE_WAVEFORM_AUDIO,(DWORD)&mciOpen))
    {
        return false;
    }
    dwFrom=MCI_MAKE_HMS(0,0,0);
    return true;

运行结果及报错内容

img

mciSendCommand(0, MCI_OPEN, MCI_OPEN_ELEMENT, (DWORD)&mciOpen); 试试

感谢邀请,我播放声音用的是PlaySound(MAKEINTRESOURCE(IDR_WAVE1), AfxGetResourceHandle(), SND_RESOURCE | SND_ASYNC);

换个音乐文件试下,万一呢

查看一下变量lpFilenNme的值是否是个有效值?

换个格式的音乐文件试试吧,例如wav文件,mp3文件,mid文件等,有的格式支持是有点问题,另外还要注意文件的压缩率,位数

MCI编程之 mciSendCommand
https://www.cnblogs.com/fdggg/articles/2975137.html