2009-02-10 58 views
2

有没有人有任何白皮书或文章比较和对比一个Web客户端组件需要.NET客户端组件,并考虑选项是ActiveX或.Net组件解决方案.NET客户端与ActiveX(或其他方法?)

我有一个客户希望在架构上推荐一个基于Active X的.Net客户端方法。但是,对于ActiveX有一些强烈的意见。我想要做的是为我们的方向收集更多的背景和行业支持。我个人不会建议任何人再写ActiveX组件。如果他们需要浏览器部署模型中的增强功能,我通常会推荐通过XBAP使用WPF或编写Silverlight应用程序。理想情况下,我想谈谈标准网站,增强网站(Silverlight)或平台优化(WPF)的优点/缺点。

这是你们能帮助我们指出正确方向的东西吗?有什么想法吗?

回答

0

安全往往是你最强的卖点。 XBAP应用程序总是在沙箱中运行,而ActiveX不包含在沙箱中。

我发现下面的微博客条目:XBAP = next-generation ActiveX?会有帮助。

1

上面的巨大链接。我想澄清的是,尽管默认情况下XBAP和ClickOnce应用程序在沙箱中运行,但它们可以提升到更高的信任度。这对于XBAP来说很棘手,因为它需要客户端机器上存在代码访问安全策略,并且没有简单的方法可以实现它(除了网络发起的MSI会破坏目的)。

一次点击应用程序可以指定他们需要在清单中提升权限(这是在项目设置中完成的)。当应用程序首次启动时,如果应用程序需要比默认区域(通常是Internet)更多的特权,则会提示用户并发出警告,但他们可以通过批准提升的权限。

Silverlight只在没有办法升级的安全沙箱中运行。有一种安全的方式来访问本地存储,但无法直接与其他硬件(如USB设备)进行交互。只要应用程序能够在Silverlight提供的安全性和功能边界内生存,Silverlight就非常适合(接近)零接触应用程序部署。不过,Silverlight会继续发展,并且这些边界将继续扩大。例如,使用Live Framework,我们现在可以在离线模式下在桌面浏览器之外运行Silverlight应用程序并进行数据同步。我有关于on channel 9的截屏视频。

我也会避免ActiveX,除非你不能满足你在这些其他配置文件中需要的东西。随着每个浏览器版本的发布,ActiveX越来越受到限制,并且这种控制难度更大,并且比替代方案更安全。对于IT专业人员来说,ActiveX可能是一个令人头痛的问题,而这又使得将应用部署到企业中变得更加棘手。

希望能为您的项目提供帮助和好运。