2011-07-12 77 views
1

編輯:爲了更好地澄清這個問題,我已經包括了一個場景:建築裝配並添加嵌入的資源在運行時 - 場景包括

方案:有產生視頻教程的教育機構。我們被要求提供一個關於如何保護視頻文件的解決方案,以免給用戶提供真正的視頻文件。視頻使用DVD ROM「離線」發佈。

解決方案:我們決定將視頻文件嵌入到Silverlight的組裝和寫一個Silverlight OOB應用程序,採用MediaElement控制的優勢,播放視頻內容。此控制接受Stream類型的視頻資源,這使得有可能使用Application.GetResourceStream方法讀取嵌入的資源作爲一個流,並把它傳遞給MediaElement的。

設計:我們需要寫兩個應用程序:

  1. 一個接受來自教育機構操作一個或多個視頻文件,並創建一個程序集,嵌入視頻文件轉換成組裝。
  2. 另一種應用,其讀取新創建的組件的內容和播放使用MediaElement控件視頻內容。

問題:

如何使用C#的Windows應用程序或Silverlight應用程序生成Silverlight的組裝和嵌入視頻資源,它「編程」?我想用AssemblyBuilder類,但它不包含在Silverlight Save方法。

任何幫助將不勝感激。

+1

創建從一個什麼大會? C#? IL?另一個組裝?雖然其中一些技術上是可行的(例如通過在您的應用中包含編譯器),但您嘗試解決的實際問題是什麼? –

+0

我已經包含了該場景以更好地闡明問題。 –

回答

0

假設你覺得你需要嵌入視頻中您所描述的方式,而不是流,那麼你就不需要Silverlight客戶端上運行的模塊的創建。

  • 有Silverlight應用程序上傳視頻到匹配的Silverlight主機
  • 現在,你有充分的訪問.NET堆棧並能創造相當多的東西,你需要(包括對飛編譯項目或組件和使用AssemblyBuilder)。

如果這不包括您的情況,請進一步澄清問題。