从 Silverlight 访问 Windows 7 的特性

阅读数:752 2011 年 1 月 22 日

话题:.NET语言 & 开发

最近微软发布了暴露 Windows 7 特性的程序库,包括传感器、语音、设备、任务条、触控技术等,这个程序库是为带有更高级别信任关系的运行在浏览器之外的 Silverlight 应用程序所用的。

Silverlight 最初只想要运行在浏览器中,并且由于安全性的原因,只能对系统资源进行有限的访问。 之后,微软引入了浏览器之外(Out-of-Browser OOB) 特性,让 Silverlight 应用程序能够在浏览器的沙盒之外运行,但还是有些限制。 Silverlight 4 中增加了COM+ 自动控制,这让 Silverlight 的 OOB 应用程序能够使用具有 COM 功能的 API 来访问 Windows 组件。 这个特性是特别为需要更高级别信任关系的企业客户引入的。 问题是,并非所有 Windows 组件都支持 COM,所以从 Silverlight 还是无法访问所有组件。

针对微软 Silverlight 的本地扩展(Native Extensions for Microsoft Silverlight NESL)是向 Silverlight 应用程序暴露 Windows 7 特性的组件库。 微软在去年 12 月份发布了 1.0 版本,其中提供了对下列组件的支持:

一个月之后,微软发布了 NESL 2.0 的预览版本,添加了对多点触控的支持、演示程序、以及对 1.0 版本的缺陷修正。在该程序库的未来版本中还会添加更多的特性。

这个程序库只能在 32 位或者 64 位的 Windows 7 上运行,并且只能被运行在更高级别信任关系下的 OOB Silverlight 应用程序使用。 其它版本的 Windows 和 Mac OS X 上都不支持 NESL。这个代码是基于微软代码共享许可发布的。

相关信息: 自动控制(OLE 自动控制)——关于在 Windows 中使用自动控制的一般信息,彻底了解 Silverlight 4 自动控制——在 Silverlight 中使用自动控制的示例。

查看英文原文:Accessing Windows 7 Features from Silverlight