【问题标题】:Silverlight out of sandbox?Silverlight 脱离沙盒?
【发布时间】:2010-11-22 21:19:25
【问题描述】:

我想使用 Silverlight 的 CLR 而不是 .NET CLR。由于这些原因,至少:

  1. 跨平台能力
  2. 我需要避免我的 .NET 编写的插件出现任何兼容性问题。进程只能承载单独的 .NET CLR,并且当针对不同 CLR 版本的多个插件位于同一进程中时,这将变得非常痛苦。 Silverlight CLR 没有这样的限制。
  3. Silverlight 支持小型部署(仅 CLR 核心和必要的程序集)

问题在于 Silverlight CLR 总是被沙盒化。有什么方法可以让 Silverlight 应用脱离沙盒?

Silverlight 类库包含一些无法从沙盒应用程序调用的方法 - 因此,我假设有一些方法可以使应用程序不被沙盒化?或者他们只是忘记删除这些方法,何时从 .NET 移植类库?

UPD:有个主意。至少,Silverlight 类库程序集可以调用任何(不安全的)代码。有什么办法可以假装 my 程序集是类库的一部分?

【问题讨论】:

  • 我想建议你重新审视你这样做的原因。 1) Silverlight,使用 Moonlight 就像 .Net CLR 与 Mono 合作时一样跨平台。 2)我也不确定这是否正确。 .Net GAC 负责为不同版本的 .Net Framework 提供不同版本的插件。应该没有问题。 3) 我假设用户不能在他们的机器上安装 .Net 框架,但是如果不使用此框架或鼓励升级,由于沙盒,您将限制您可以访问的功能。跨度>
  • 如果不确定,请不要回答。 个问题。
  • 如果您的问题是您是否可以让任何 Silverlight 应用程序在安全沙箱之外正常执行,答案是否定的 - 这已经在下面了。

标签: .net silverlight


【解决方案1】:

我认为没有办法让 silverlight 运行时在安全“沙盒”之外运行。

作为安慰,您可以创建在浏览器之外运行的 silverlight 应用程序,因此至少它们感觉像是桌面应用程序。

如果这对您有帮助,您可以在此处了解更多信息:

http://wildermuth.com/2009/03/18/Enabling_Out-of-Browser_Support_in_Silverlight_3

http://timheuer.com/blog/archive/2009/03/18/silverlight-3-offline-update-framework.aspx

http://videos.visitmix.com/MIX09/T45F

更新:这是 Microsoft Silverlight 官方网站上的视频

http://silverlight.net/learn/learnvideo.aspx?video=187318

silverlight.net 上有很多很棒的教程等

除此之外,我建议关注 Tim HeuerScott Gu 以获得 Silverlight 官方公告。

【讨论】:

  • 有关于这个主题的官方信息吗?
  • 刚刚在 silverlight.net 网站上添加了一个链接,这是一个官方功能,因此您可以在那里找到更多信息。
【解决方案2】:

我们确实通过使用 Mozilla 的 XUL Runner 作为可以托管 silverlight 的浏览器容器来考虑这样的项目,并且如果以足够的权限执行,XUL 具有许多可供浏览器及其 silverlight 代码使用的 api。它的小技巧是在 XUL 的 api 和浏览器主机之间建立一个 javascript 桥梁,以提供 silverlight 不可用的所有 api。

我们停止了这个项目,因为微软没有真正支持其他平台的 silverlight,而且由于目前微软只为 windows 和 mac 英特尔提供 silverlight,这对于真正独立于系统几乎没有用处。让它真正独立于系统并不是微软的意图,所以我们继续使用 Adob​​e AIR。

但是您可以尝试在 XUL 中托管 silverlight,这样 XUL 可用于所有平台,明天当 mono 变得稳定时,您当然可以将它用作良好的平台。但是速度非常的慢。并且也存在真正糟糕的线程问题。

【讨论】:

    【解决方案3】:

    不,没有。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-10
      • 2016-04-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多