在Silverlight 3中使用MediaElement时出现System.OutOfMemoryException

时间:2009-09-23 15:44:11

标签: silverlight expression-blend mediaelement

我正在尝试使用MediaElement标记构建一个简单的Silverlight 3 MediaPlayer:

<Border Margin="8,8,0,8" Grid.Column="1" Grid.Row="1" BorderBrush="Black" BorderThickness="1" CornerRadius="7">+
<MediaElement x:Name="FighterPilot" Source="http://localhost/repository/FighterPilot.wmv" Stretch="Fill"/>
</Border>

这对于低分辨率wmv文件非常有效。但是当WMV文件具有720p分辨率时,我得到构建错误

  

Xap包装失败:   的System.OutOfMemoryException

有没有人知道我为什么会遇到这个构建错误?

感谢您对此提供任何帮助!

更新:我正在开发的PC上有大量的可用内存,所以内存应该不是问题。

3 个答案:

答案 0 :(得分:2)

假设您正在使用Visual Studio且WMV文件位于Silverlight项目中,请将WMV文件上的构建操作设置为“无”,并将“复制到输出目录”设置为“始终复制”。这样它就不会与XAP文件捆绑在一起。

或者您可以考虑将WMV文件放在网站ClientBin文件夹下的“Video”目录中,然后使用以下内容访问该目录:

FighterPilot.Source = new Uri("/Video/FighterPilot.wmv", UriKind.Relative);

答案 1 :(得分:1)

不,我从未遇到过这个问题。简单的解决方案是不在Silverlight项目中包含wmv文件。您可以在ASP.NET项目中的某处添加它,以避免它一起打包在xap中。

答案 2 :(得分:0)