针对网络浏览器应用程序的C++前景
What prospects for C++ targeted for web-browser apps?
我们有便携式C++源,用于在各种不同的硬件(10+平台(上部署游戏和应用程序。我们现在对部署到 Web 浏览器感兴趣。
Chrome 有其原生客户端架构。但是,作为一个平台,我们仅限于Chrome用户。是否有任何其他新兴标准允许编译 C/C++ 源代码并将其定位到 Web 浏览器?
关于这个话题,短期内没有 100% 的答案。
原因是没有一个主要的 Web 浏览器实际上支持运行完全安全的本机编译代码,就像C++一样。ActiveX从未完全受到保护,并且并非100%了解chrome的适用性,但是chrome在用户空间中做了很多事情。像编译的机器代码这样的东西只能从操作系统内核制作的适当沙箱中真正信任。
即将发布的Windows 8版本具有新的沙盒技术,与新的Windows RT编译器一起将允许在浏览器中C++,并且此新代码得到了适当的保护。
使用Linux 的人也在那里使用不同类型的沙箱,内核也支持这些沙箱。在遥远的未来,您可能会将这些视为 linux 浏览器的沙箱以及 VMS 托管解决方案的沙箱等......
所以就目前而言,C++代码的解决方案是......
1(谷歌浏览器应用程序2( Windows 8 IE 10 与新的 Windows 8 Metro 应用程序等...
您必须为所有系统构建应用程序,并使用服务器 cookie 来确定要发送到浏览器的版本。就像以前有ActiveX和Mozilla Netscape插件一样。换句话说,新的和即将到来的插件场景将比ActiveX和Netscape插件更安全(因为它将被正确沙盒化(,但它可能会更加昂贵和技术性,因为......
1(将有更多的供应商在浏览器中自定义机器代码插件。2(每个操作系统中的沙盒会略有不同,甚至非常不同。3( 每个操作系统的构建项目将不同。4(您通常很可能不得不将应用程序放在应用商店中。5(您必须让应用商店验证应用程序。6(如果您想在任何地方提供支持,您可能需要支付不同的应用商店费用。
如果供应商使沙盒技术正常工作,那么很多人会出于显而易见的原因使用它,但是在客户端沙盒的某种标准化之前,可能需要很多年,这对每个人来说都是一件非常可悲的事情。但我认为,如果浏览器制造商实施了操作系统支持的适当沙盒,它将是完全安全的,因此许多网络公司将不再能够控制您所做的一切。
否则我可能过度猜测,但这就是我现在对C++和浏览器的看法。我的建议是,等一段时间再做其他事情。如果沙盒来了,那就这样吧。
>Emscripten可以将LLVM位码(例如由Clang从C++生成(编译为JavaScript。
- 从两个窗口返回前景窗口
- 如何在OpenCV中实现颜色分割以及前景检测
- 为什么最后创建的Qt3DCore::QEntity总是在我的场景视图的前景中?
- 确定窗口是否聚焦/活动/前景
- libgit2-前景与背景
- 有没有一种算法可以使用opencv来分离图像的前景和背景
- 针对网络浏览器应用程序的C++前景
- 为什么HWND_NOTTOPMOST无法在xp中显示窗口前景
- 在前景中渲染文本
- 在QT中创建前景背景数组
- MFC:当将焦点设置为子窗口时,如何防止应用程序成为前景窗口
- OpenCV中前景-背景分割方法的区别
- 从视频流提取前景
- 在图像上应用蒙版来裁剪前景会得到不完整的输出
- 使用自定义前景/背景模型的GrabCut
- 在 DirectX 中使用漫反射着色器时,背景面在同一网格中的前景上可见
- 如何投影我的窗口作为活动窗口的前景