WINEHQ - wine_gecko 无法初始化 - HTML 渲染已禁用

WINEHQ - wine_gecko 无法初始化 - HTML 渲染已禁用

我目前正在尝试让一个 Windows 编译程序通过 Wine 在 Linux 和 MacOSX 上运行。

当我通过 wine 运行该程序时,它提示我安装 Gecko,我照做了。稍后,程序会尝试使用 MSHTML 来呈现 HTML,但我在控制台上收到这些错误消息。

err:mshtml:init_xpcom NS_InitXPCOM2 失败:80004005 err:mshtml:HTMLDocument_Create 无法初始化 Gecko,返回 CLASS_E_CLASSNOTAVAILABLE fixme:ole:CoCreateInstance 没有为类 {25336920-03f9-11cf-8fd0-00aa00686f13} 的接口 {00000000-0000-0000-c000-000000000046} 创建实例,hres 为 0x80040111

我正在使用 Wine 1.1.34,据说 1.1.33 中已经修复了类似的错误
http://bugs.winehq.org/show_bug.cgi?id=12578

我整个下午都在做这件事,我是否遗漏了什么?

谢谢,尼克

答案1

即使使用 winetricks,wine 也不支持 com,因此创建 com 组件将导致此错误。没有修复。

答案2

因此,如果您输入“wine iexplore.exe”,它会打开 wine 版本的 Internet Explorer(gecko)吗?

你说这个程序是“windows 编译的”。是你编译的吗?你用过 visual studio 吗?

如果这是一个.NET应用程序,您将需要使用mono来运行它。

http://www.mono-project.com/Main_Page

答案3

尝试葡萄酒技巧

按着这些次序:

wget http://www.kegel.com/wine/winetricks
chmod a+x winetricks
env WINEPREFIX=yourwineprefix ./winetricks gecko

winetricks 是我最喜欢的 wine 工具,它能帮助你修复大量问题。

答案4

我遇到了非常类似的问题,因为我使用的是 64 位 Wine,并且只安装了 64 位 Gecko。事实证明,有时您可能需要 64 位和 32 位 Gecko。我遇到的错误是“ 01ff:err:mshtml:create_document_object Failed to init Gecko, returning CLASS_E_CLASSNOTAVAILABLE”。

安装 64 位和 32 位 Gecko 后,问题消失并且渲染开始工作。

我使用了最新的 Gecko 安装程序https://wiki.winehq.org/Gecko 并使用 安装它们msiexec /i <installer>.msi

相关内容