最近偶然發現了這篇文章,同時試圖決定讓VLC播放器進入C#的最佳方式。C#Vlc.DotNet庫 - 空參考異常
Does VLC media player have a C# interface?
我下載的DLL文件和它們導入我的項目,但後來意識到我必須對如何使用它們沒有真正的想法。有沒有人有這個代碼的Windows窗體示例工作?代碼已嘗試顯示如下 -
Vlc.DotNet.Core.Medias.MediaBase media = new
Vlc.DotNet.Core.Medias.PathMedia(@"C:\Users\...\SampleVideos\Wildlife.wmv");
Vlc.DotNet.Forms.VlcControl vlcControl1 = new Vlc.DotNet.Forms.VlcControl();
vlcControl1.Play(media);
我也在我的項目的主program.cs中使用此鏈接中的代碼。
http://vlcdotnet.codeplex.com/wikipage?title=Forms
目前的問題,我的經驗是,一旦開始了項目,它拋出一個NullReferenceException當它到達 - >
vlcControl1.Play(media)
這個問題似乎是與vlcControl,但我不確定爲什麼。該文檔似乎相當薄,我無法找到codeplex網站上的任何工作示例。如果任何人有工作表格的例子或知道我可能錯過了什麼,請讓我知道!
這裏是調用堆棧當存在時發生錯誤 - >
RTSPViewer_Test.exe!RTSPViewer_Test.Form1.Form1_Load(object sender,
System.EventArgs e) Line 31 + 0xd bytes C#
RTSPViewer_Test.exe!RTSPViewer_Test.Program.Main() Line 30 + 0x1d bytes C#
當調試看來該VLC控制的媒體和媒體屬性均爲空。當試圖控制的媒體設置爲高於
NullReferenceException
檢查VLC控制對象介質上創建的媒體對象確實等於空,但我不知道爲什麼它沒有被正確初始化。
有沒有可能包含NullReferenceException的調用堆棧?鑑於上面的代碼,既不vlcControl1或媒體可以爲空,所以異常必須從邏輯來的播放方法內。 – JoshL 2012-04-27 17:17:17
看看這個 http://vlcdotnet.codeplex。com/wikipage?title = Presentation%20of%20Vlc.DotNet%20alpha%202 – RajN 2012-04-27 17:18:08
今天晚些時候我會添加調用堆棧信息,我認爲它可能是函數調用自己內部的東西。 @Raj,這個例子是爲DLL的老版本編寫的,大部分代碼不再起作用。 – jackocurly0074 2012-04-27 18:01:12