我们的团队正在为我们基于浏览器的客户端寻找 ActiveX 的替代品。目前flash、silverlight、HTML5都在考虑中。因为我之前有一些 Qt 的经验,所以我想推荐 Qt。从文档来看,QtBrowserPlugin 似乎是我们需要的。 任何替代方案都必须满足三个标准
- 必须支持IE
- 性能不应(不合理地?)降低到现有的 ActiveX
- 其他浏览器支持。
考虑以上
第一个问题:与其他替代方案相比,Qt 的表现如何
第二个问题:微软将在 2012 年左右停止支持 Active X。另外,目前 QtBrowserPlugin 对 Windows 以外操作系统的支持还在试验阶段。是否预计它会进一步发展以解决这些问题,即是否可以考虑将其用于 future 发展。
最佳答案
(嗯——也许我应该把它作为“评论”而不是“回答”来发布——抱歉,我还在摸索……)
QT 致力于提供完整的 Web 应用程序框架,但它还处于非常非常初级的阶段。您可以在此处找到更多信息:http://labs.qt.nokia.com/2010/07/19/the-qt-web-runtime-journey-begins/
插件技术成熟——基于 NetScape 插件协议(protocol)——并且运行良好,但是,当然,你必须为 Mac/Win/Linux 和其他操作系统安装单独的插件。 Qt 在这方面有很大帮助,但您必须维护单独的构建并适本地交付它们。您将通过 Qt 获得最佳性能,因为它与 Active X 一样是基于 C++ 的。
Flash/Flex 是一个很好的开发环境(基于 Eclipse),ActionScript 是一种时髦的语言 - 它本质上是一种基于 ECMA 的语言(类似 JavaScript),具有更强的类型。没关系。您确实必须了解事件顺序才能知道何时可以依赖大小 - Flash 将它可以做的一切都推迟到以后。 Flash 无处不在(除非你是 iPod/iPad 的狂热爱好者......)Flex 的一大缺点是可执行镜像非常巨大,无论它做什么......
Silverlight 使用 C#,恕我直言,这是一种非常好的语言。假设您没有使用整个 SDK,可执行镜像要精简得多。缺点是它在很多设备上不可用,AFAIK。
不太了解 HTML5 - 这最终是一个很好的方向,但您必须处理浏览器支持问题。如果您需要支持旧浏览器,那将是一个问题。但是,您将能够支持很多设备,尤其是 iPod/iPad,并且为 future 做好准备。
这里不提供选择 - 只是提出一些您可能已经考虑过或可能没有考虑过的问题...
关于silverlight - qtbrowserplugin 与 flash/silverlight?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3988401/