【问题标题】:Compiling WebKit for Windows8-Metro Environment为 Windows8-Metro 环境编译 WebKit
【发布时间】:2013-03-04 23:59:16
【问题描述】:

我想向 SO 社区询问以下信息: - 是否可以为 Windows8-Metro 环境编译 WebKit,无论是以 WinRT 组件的形式还是作为 C++/XAML 应用程序中的链接库? - 实现这一目标的主要步骤是什么? - 哪些可能的事情会使这不可能或非常困难? - 是否有人正在努力? - 有没有可能召集感兴趣的人来做这件事?

【问题讨论】:

    标签: compilation webkit windows-8 windows-runtime winrt-xaml


    【解决方案1】:

    我认为你不能仅仅为 WinRT/Metro 风格“编译”Webkit。 Metro Style 应用程序的 API 调用类型受到限制,例如 WinRT 没有 GDI/GDI+/MFC。 WebKit 有几种你可以使用的构建模式,你可以使用 QT 作为渲染引擎,或者使用 GTK,或者纯 GDI,但是在所有这些情况下,当你为 Windows 操作系统创建新的构建时,你将在最后。

    不过,您可以修改 Webkit 源代码并添加使用 WinRT 新 API 的新渲染引擎。如果你这样做,你可能会成名。

    附带说明,即使有“Windows 应用商店”版本的 Chrome,通过查看 Chromium 的源代码,在我看来,该版本只是一个与“普通”桌面通信的简单应用启动器使用 IPC 通道的版本。它似乎不是完整源代码的真正 Windows 应用商店版本。

    【讨论】:

      【解决方案2】:

      我不确定 WinRT 环境是否允许这样做,但有一个名为 Awesomium 的项目是 Google Chrome 的包装器,我认为 Google Chrome 是基于 WebKit 的。它还具有 .NET 包装器,因此您可以将其嵌入到您的 .NET 应用程序中。

      我从未尝试过使用它,也不知道这个库是否适用于 WinRT,但至少这是一个开始。

      【讨论】:

        【解决方案3】:

        WinRT 是托管代码和本机代码的组合,因此,您有机会移植 WebKit,但请记住 - 本机代码有一些沙盒限制。

        您也可以选择 XNA。

        【讨论】:

        • 你能说更多吗?我对自定义 webKit 和编译它很感兴趣。
        • 首先,您必须有权访问 WebKit 源代码。我推荐它而不是 VP8,因为它在没有 google 的情况下更快且免费。其次,你必须了解基于原生代码的 WebKit 架构。第三,您必须重新构建具有 .NET 优势的托管 .NET 代码架构。第四 - 移植到 .NET。第五,抓虫子,追求标准。你最大的问题不是html,而是css和js会阻止你。一个人可以花费一生的时间将大型旧项目移植到新架构中,您必须拥有一个强大的 .NET 团队。
        • 你是说 WinRT 不够底层,无法在本机代码级别移植 WebKit?
        • 很抱歉,但我仍然认为您始终可以创建一个 WinRT 模块(即,将自己显示为 Metro 应用程序的托管代码程序集),从本机代码 C++ 基础编译它。因此 WinRT 不会阻止低级本机代码像 WinRT 模块(.NET 托管样式)一样执行和显示自己。
        • XNA 在 Windows 8 应用商店应用中不受支持。
        猜你喜欢
        • 1970-01-01
        • 2012-09-16
        • 2012-03-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-07-27
        • 2019-09-23
        相关资源
        最近更新 更多