Silverlight如何运作?

srd*_*srd 5 silverlight silverlight-toolkit

任何人都可以向我指出一个链接,详细描述Silverlight的工作原理.我的意思是,它是作为一个单独的进程运行还是在与浏览器相同的进程中运行?Silverlight插件是否负责解析XAML并呈现Silverlight与浏览器在同一地址空间中运行?基本上更多关于如何解析和呈现Silverlight代码的细节以及处理它的过程以及此过程在何处运行?

TIA

Kli*_*ger 2

我还没有看到任何有关您正在寻找的深度的信息。因此,请遵循我所知道的一些内容。

Silverlight 如何运行取决于浏览器插件架构。

查看以下链接:

关联

http://kb.mozillazine.org/Plugin-container_and_out-of-process_plugins

此链接有一点关于您要问的内容(SL1):http://help.outlook.com/en-us/140/bb412366.aspx

上面的这些链接都没有深入到您正在寻找的深度。

我所知道的是Silverlight插件是一个运行时环境,就像.net或java vm一样。

为 Silverlight 应用程序(c#、vb、f#)编写的代码首先被编译、打包并压缩在 xap 文件中

在IE中Silverlight使用ActiveX技术。在其他浏览器中它使用 NPAPI。

源代码在运行时不会被解析/解释。Silverlight 应用程序采用二进制格式,就像常规 .net 应用程序一样。

xap 文件是包含二进制文件 (dll) 和内容(xaml、图像等)的部署单元。

Visual Studio 负责为您生成 xap。但您也可以自己完成这一切。xap 扩展名只是重命名的 zip 文件。

一旦浏览器收到 xap 文件,插件就会启动并解压并执行应用程序。

AppManifest.xaml(xap 中的一个文件)告诉插件哪个类是入口点。

当 Silverlight 应用程序运行时,只会在运行时解析 UI 控件的 Xaml 部分。

输入首先由浏览器处理,然后由插件处理。一般来说,你不太关心它,但它确实会产生一些后果。

Silverlight 插件还能够渲染直接嵌入 Html 中的 Xaml。

该插件能够与页面交互,并且可以向 JavaScript 公开对象模型,应用程序还可以调用 JavaScript 函数并与 DOM 交互。

如果为此而设计,Silverlight 应用程序也可以在浏览器之外运行。