在将应用程序部署到干净的机器后,我遇到了一个问题。下面是运行应用程序的结果:
- Win7 Home:安装ffdshow程序后播放wmv, mp3.
- Vista主页:安装了ffdshow后,它播放mp3,但不播放wmv
- WinXP(没有服务包):不播放wmv, mp3,即使安装了ffdshow。该程序可以找到38个后端,mp3和wmv是其中之一。可以播放wav文件。
- 在构建项目的计算机上,即使在ffdshow中禁用了许多格式,也可以正常播放。
plugins文件夹放在exe文件旁边,包含一个phonon_backends文件夹,其中包含phonon_ds94.dll。
有人能解释我如何使程序播放文件在电脑上没有安装Qt ?
我不确定mp3文件不播放,但是您是否记得在不播放视频的机器上部署QtOpenGL4.dll ?在Windows上,Phonon后端依赖于这个DLL,当它不存在时,它会静静地坐在那里不做任何事情。
Sjwarner的建议是尝试Dependency Walker是一个很好的建议,特别是在这种情况下,插件dll是动态加载的。
我要做的第一件事就是给Dependency Walker一个尝试。我将在上面详细介绍的所有部署状态下运行它,看看在每种情况下应用程序使用的dll之间是否有任何差异。
我遇到了这个确切的问题,我通过安装编解码器包来修复它。这是我使用的:K-Lite Mega编解码器包(确保不要安装最后的两个浏览器附加组件)