【问题标题】:Building assembly and adding embedded resource at run-time - Scenario included在运行时构建程序集并添加嵌入式资源 - 包括场景
【发布时间】:2011-07-13 16:35:01
【问题描述】:

编辑:为了更好地澄清问题,我提供了一个场景:

场景:有一家制作视频教程的教育机构。我们被要求提供有关如何保护视频文件的解决方案,以免用户无法访问真实的视频文件。这些视频使用 DVD ROM“离线”发布。

解决方案:我们决定将视频文件嵌入到 silverlight 程序集中并编写一个 Silverlight OOB 应用程序,该应用程序利用 MediaElement 控件来播放视频内容。此控件接受Stream 类型的视频资源,这使得可以使用Application.GetResourceStream 方法将嵌入资源作为流读取并将其传递给MediaElement。

设计:我们需要编写两个应用程序:

  1. 接受来自教育机构运营商的一个或多个视频文件并创建程序集并将视频文件嵌入程序集的一种。
  2. 另一个应用程序,它读取新创建的程序集的内容并使用 MediaElement 控件播放视频内容。

问题:

如何使用 C# windows 应用程序或 Silverlight 应用程序生成 silverlight 程序集并将视频资源“以编程方式”嵌入其中?我想使用AssemblyBuilder 类,但它在silverlight 中不包含Save 方法。

任何帮助将不胜感激。

【问题讨论】:

  • 从什么创建一个程序集? C#?伊利诺伊?另一个大会?虽然其中一些在技术上是可行的(例如,通过在您的应用中包含编译器),但您要解决的实际问题是什么?
  • 我已经包含了场景以更好地澄清问题。

标签: silverlight silverlight-4.0 embedded-resource


【解决方案1】:

假设您觉得需要以您描述的方式嵌入视频,而不是流式传输,那么您不需要在 Silverlight 客户端上运行模块的创建。

  • 让 Silverlight 应用将视频上传到匹配的 Silverlight 主机
  • 现在您可以完全访问 .Net 堆栈,并且可以创建几乎任何您需要的东西(包括即时编译项目或程序集以及使用 AssemblyBuilder)。

如果这不包括您的情况,请进一步澄清问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-10-17
    • 2021-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-08
    • 1970-01-01
    相关资源
    最近更新 更多