2017-05-31 48 views
0

我有一个Windows媒体播放器工具,当我的应用程序打开时,我想播放本地视频。该视频存储在资源中,并设置为始终复制(我不确定这是否正确,因为我一直在为本地HTML页面执行此操作,并且我只是假定它也与视频文件一样)并且已添加到解决方案。Winforms资源中无法识别的文件路径(C#)

我一直在使用HTML页面的语法:"file:///{0}/mail/index.html",但我不确定这是否也用于媒体。

我有视频播放器/文件中的代码:

private void Form1_Load(object sender, EventArgs e) 
{ 
    axWindowsMediaPlayer1.URL = "file:///{0}/Resources/newintrovid.wmv"; 
} 

的问题是它不承认"file:///{0}Resources/newintrovid.wmv"作为路径,我在做一些非常愚蠢的吗?我已按照MSDN上的说明进行操作,并且我一直在解决方案中出现“无法找到文件”错误。

作为一个额外的注意事项,我希望媒体播放器和视频在视频结束时关闭。我在网上看了一下,但是我找不到任何方法。如果有人能指出我正确的方向,将不胜感激。

+1

有..在Windows应用程序的Web应用程序路径和Windows应用程序的文件路径之间的区别在哪里是' .wmv文件位于..?做一个谷歌搜索资源文件或如何使用'File.Path' – MethodMan

+0

好吧,我几乎可以保证{0}不是实际文件路径的一部分。你错过了那个字符串的'string.format()',有一​​些值放在占位符中吗? –

回答

1

这个问题很可能是您的字符串周围的string.Format错过了一个电话号码,用一个变量填充{0}占位符。

像这样的东西应该工作(显然你应该替换为您的应用实际路径):

private void Form1_Load(object sender, EventArgs e) 
{ 
    var mediaPath = @"C:\Program Files (x86)\Microsoft Office"; 

    axWindowsMediaPlayer1.URL = 
     string.Format("file:///{0}/root/fre/StartMenu_Win7.wmv", mediaPath); 
} 
+0

谢谢,我会给它一个。在[MSDN](https://msdn.microsoft.com/en-gb/library/bb383953(v = vs.90).aspx)上看起来很简单,但指令非常模糊。 – gezer4000

+0

**更新**这工作...谢谢! – gezer4000