以前用delphi5编的一个多媒体播放软件,能支持 mpg,avi,wav,mp3,mid,dat等多种格式的文件,现在想一用,发现dat格式不能播放,其余均行,不知何故?出错提示的信息就是标题所列的那句话: "无法通过给定的扩展名确定设备类型"
【补充说明】1.我曾按网上找到的,一篇叫 如何在 Windows XP 中更改文件关联 ? 文章,把dat文件关联到我的播放软件,不起作用。 2.我用xp自己提供的mediaplayer播放,竟也出现完全同样错误。
【补充说明】1.我曾按网上找到的,一篇叫 如何在 Windows XP 中更改文件关联 ? 文章,把dat文件关联到我的播放软件,不起作用。 2.我用xp自己提供的mediaplayer播放,竟也出现完全同样错误。
---------------------------------------------------------------------
1. 用暴风确实能播放,说明不是被播放文件问题。2. 我想起来了:可能是微软反XP盗版搞的小名堂。在此之前我无意中更新
过微软在xp中的mediaplayer,结果因“未通过正版验证”而失败,
估计是强制性地关闭掉了对dat文件的关联功能。
我想起用自编来试播,就是因为用mediaplayer播放失败的缘故。3. 既然暴风能播放,我估计问题不会很大,正如bdmh说的那样,打开文件,
来查清文件的属性,没错,直接播放就行了。
********************************************************这不可能,
因为微软的以及我自编的mediaplayer.exe对所有其他格式文件都可播放,
且在其他机器上两个软件对dat格式也都可播放。似乎除了关联可能出问题之外,其他的原因都无法解释。
嗯,再从字面上分析一下你的,意思是说
“你就光告诉哥这文件的扩展名是.dat,哥没办法判断这是不是视频文件啊!!”
嗯,这么想来,确实有其他类型的文件的扩展名是dat的。数据文件日志文件什么的。
嗯,你系统里面是不是装了某种软件恰好是支持dat扩展的文件的,但这个dat又不是视频的那个dat。
你研究一下文件查看里面的扩展名,说不定就是这个问题。
又看了你前面说的,明明是视频的dat也会提示这个错误。
我想是你的代码里面,判断文件名类型的那个函数,是不是通过查找注册表里已经注册了的扩展名之类的来判断的,而不是通过文件头判断。才会在明明是视频.dat的文件播放的时候出现这种问题。而在其他电脑上因为没有缺少dat扩展名或者重复注册dat扩展名,就没出现问题。最后解决了吗?解决了要来回帖嗷