我用delphi自带的媒体播放控件mediaplayer播放dat格式的文件时,为什么会出现错误,错误提示为:Project Project1.exe raised exception class EMCIDeviceError with message '指定的设备未打开或不被MCI所识别。
前几天我都可以用这个控件进行播放dat格式的文件,可是我装了神龙卡过后,然后把卡卸了,现在控件就不能播放dat格式的文件了。请各位高手指教,谢谢。

解决方案 »

  1.   

    你再装个XingPlayer就可以了 hehe^^其实是你的Windows媒体驱动设置文件有问题了........修复一下具体吗.....
      

  2.   

    很奇怪,但很有效。
    procedure writemci; //定义一个过程,向ini文件写一些配置信息,以便系统能调用相应驱动程序来播放文件
     beginWritePrivateProfileString('mci extensions','mpg','MPEGVideo','win.ini');
    WritePrivateProfileString('mci extensions','dat','MPEGVideo','win.ini');
    WritePrivateProfileString('mci extensions','mpv','MPEGVideo','win.ini');
    WritePrivateProfileString('mci extensions','mpeg','MPEGVideo','win.ini');
    WritePrivateProfileString('mci extensions','cjt','MPEGVideo','win.ini');
    WritePrivateProfileString('mci extensions','avi','AVIVideo','win.ini');
    WritePrivateProfileString('mci','MPEGVideo','mciqtz.drv','system.ini');
    WritePrivateProfileString('多媒体精灵','作者','陈经韬','smpg2000.ini');
    WritePrivateProfileString('多媒体精灵','版本','2000版','smpg2000.ini');
    end; hehe^^ 找的
      

  3.   

    文件名改成mpg试试,或者再装其他程序
      

  4.   

    小唐 (2002-04-01 21:51:00)  在此摘抄一段jingtao的代码给你:
    procedure TForm1.WriteMciConfig;
    {定义一个过程,向ini文件写一些配置信息,
    将此过程在Form的create事件里调用即可
    解决你提的这个问题!这个过程是为了让
    系统能调用相应驱动程序来播放文件,
    注意:如果不这样做Mediaplay控件打开某
    些扩展名的文件时(如.dat文件)会发生什
    么MCI初始化错误,很多人相信已经吃过这
    个苦头}
    begin
      WritePrivateProfileString('mci extensions', 'mpg', 'MPEGVideo', 'win.ini');
      WritePrivateProfileString('mci extensions', 'dat', 'MPEGVideo', 'win.ini');
      WritePrivateProfileString('mci extensions', 'mpv', 'MPEGVideo', 'win.ini');
      WritePrivateProfileString('mci extensions', 'mpeg', 'MPEGVideo', 'win.ini');
      WritePrivateProfileString('mci extensions', 'cjt', 'MPEGVideo', 'win.ini');
      WritePrivateProfileString('mci extensions', 'avi', 'AVIVideo', 'win.ini');
      WritePrivateProfileString('mci', 'MPEGVideo', 'mciqtz.drv', 'system.ini');
    end;