c# Windows窗体Windows媒体播放器没有图片
本文关键字:Windows 有图片 窗体 媒体播放器 | 更新日期: 2023-09-27 18:04:00
我需要一个建议,我有一个使用WMP (WMPLib.dll和AxInterop的c# windows窗体应用程序。WMPLib。dll)。我试用了一个应用程序,除了一台以外,它在所有电脑上都能正常工作。那台电脑安装的是Windows XP系统。当我尝试播放视频时,播放器加载视频,显示总时间,开始播放视频,但是没有图片,只有黑屏。当我尝试在同一台计算机上的windows媒体播放器上播放同一视频时,一切都很好。我在其他windows XP电脑上测试了这款应用,一切正常。
到目前为止,我重新安装了WMP,重新安装了所有编解码器,删除了所有其他播放器,但这没有帮助。
有没有人能给我指出正确的方向,我还可以检查什么,或者我能做些什么来解决这个问题。
我发现,当我关闭无窗口选项视频图像显示。我使用无窗口选项,以便能够捕捉视频播放的图像。如果没有这个选项,我就不能用下面的代码捕获屏幕:
Bitmap bitmap = new Bitmap(wmPlayer.Width-26, wmPlayer.Height-66);
{
Graphics g = Graphics.FromImage(bitmap);
{
Graphics gg = wmPlayer.CreateGraphics();
{
this.BringToFront();
g.CopyFromScreen(
wmPlayer.PointToScreen(
new System.Drawing.Point()).X+13,
wmPlayer.PointToScreen(
new System.Drawing.Point()).Y,
0, 0,
new System.Drawing.Size(
wmPlayer.Width-26,
wmPlayer.Height-66)
);
}
}
using (MemoryStream ms = new MemoryStream()){
bitmap.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
ret = System.Drawing.Image.FromStream(ms);
pictureBoxSlika.Image=ret;
}
}
bitmap.Dispose();
如何使这个无窗口选项在所有计算机上工作?
当运输应用…确保目标系统与您用于开发应用程序的。net框架版本和。dll文件版本兼容。
可能你使用的wmp.dll文件版本比windows XP已有的版本要高。
始终检查与应用程序中使用的内容的兼容性。
根据05-31-2014问题编辑:
你需要使用一个属于Silverlight System.Windows.Interop
的命名空间
考虑阅读更多关于Windowless
和Interop
的信息