2010-07-25 85 views
1

我在我的一个项目中使用Silverlight媒体框架。现在我想在浏览器中播放媒体文件,媒体文件位于PC的D驱动器中?我用XAML编码播放文件,但SMF播放器没有获取媒体源。下面是用来访问该文件的XAML代码。如何在本地播放Silverlight媒体框架中的文件?

<Core:SMFPlayer> 
     <Core:SMFPlayer.Playlist> 
      <Media:PlaylistItem MediaSource="file:///D:/Microsoft Silverlight/1.wmv"></Media:PlaylistItem> 
     </Core:SMFPlayer.Playlist> 
    </Core:SMFPlayer> 

回答

2

Silverlight运行在安全的沙箱中,您不能简单地访问本地filSystem。您将不得不使用OpenFileDialog来让用户选择 文件。然后您可以设置MediaPlayer的来源。 请记住,必须从用户启动的事件(如Button.Click)调用OpenFileDialog。

或者,您可以将文件放在Web服务器上并从那里加载它。您也可以使用相对路径。只需将它放到Web项目的ClientBin文件夹中即可。

0

另一种方法是将文件托管在本地IIS服务器上。我这样做时遇到的一个问题是,使用“Pass Through Authentication”时,默认的IIS安装不会为您的应用程序提供正确的权限。因此,请确保“直通帐户”具有对视频文件所在路径的读取权限。通常,“直通帐户”与您的应用程序的应用程序池使用的帐户相同。对于正常安装,这将是网络服务内置帐户。

0

您需要将媒体文件放在Silverlight应用程序中。然后,转到媒体文件的属性并将构建操作更改为资源。在playlistitem元素的媒体属性中通过本地名称引用文件(只是myfile.myextension,而不是C:/ [mypath]/[myfilename])。

相关问题