2017-05-31 107 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