用MCI播放DAT文件,lpstrDeviceType的值是什么?MCI_DEVTYPE_VIDEODISC,还是别的?

解决方案 »

  1.   

    MCIERROR COMMCI::Open(int DeviceType,LPCSTR filename)
    {
    DWORD result = 0;
    if (mciOpen.wDeviceID) Close();
    mciOpen.lpstrDeviceType = (LPCSTR)MCI_DEVTYPE_DIGITAL_VIDEO;//是什么?
    mciOpen.lpstrElementName = "c:\\1.dat";

    result = mciSendCommand(NULL,MCI_OPEN,MCI_OPEN_TYPE|MCI_OPEN_TYPE_ID,(DWORD)(LPVOID)&mciOpen);
    if(result)
        {
    return FALSE;
    } else
    {
    return TRUE;
    }
    }为什么总是return FALSE
      

  2.   

    mciSendCommand如果成功运行返回0,不成功返回其它值,所以用if(result==0)来检查错误
    另外,lpstrDeviceType可以直接设成字符串"mpegvideo",我试过,可以播.dat