使用 Wine 运行 Discord 时,出现以下错误:
00e0:fixme:ntdll:NtQueryInformationToken QueryInformationToken( ..., TokenElevationType, ...) semi-stub
00e0:fixme:ieframe:DllGetClassObject {9ba05972-f6a8-11cf-a442-00a0c90a8f39} {00000001-0000-0000-c000-000000000046} 0031DC5C
00e0:err:ole:apartment_getclassobject DllGetClassObject returned error 0x80040111 for dll L"C:\\windows\\system32\\ieframe.dll"
0050:fixme:explorer:webbrowser_QueryInterface (41C41D0C)->({00000003-0000-0000-c000-000000000046} 0031E79C) interface not supported
0050:fixme:explorer:webbrowser_QueryInterface (41C41D0C)->({00000003-0000-0000-c000-000000000046} 0031E714) interface not supported
0050:fixme:explorer:webbrowser_QueryInterface (41C41D0C)->({00000019-0000-0000-c000-000000000046} 00819A38) interface not supported
00e0:fixme:ver:GetCurrentPackageId (0031FE34 00000000): stub
我正在使用的 Discord 安装文件:https://dl.discordapp.net/distro/app/stable/win/x86/1.0.9002/DiscordSetup.exe
我在用盒子86, 但这个问题意味着这不是 box86 的错误。我也在其他系统上看到过此错误。系统信息:Raspberry Pi 4B、RPi OS 32 位、wine 32 位、4G RAM、64G 存储、1.80GHZ 4 核 CPU
谢谢你的帮助!
答案1
我可以告诉你发生了什么。
在 Windows 中,有一种东西叫 COM。它是一种将彼此不了解的程序链接在一起的方法。
Wine 对其 COM 实现做了一半努力ie框架库而且它没有你的程序试图访问的魔力。这不是 Wine 的错,它很糟糕,每个人都知道这一点。制作 Wine 的优秀人员可能花了更多时间在这上面,但他们无法知道游戏会尝试使用什么愚蠢的界面。
你可能可以从其他地方合法获取此 DLL(但由于 SU 不允许我帮助你窃取或违法,因此合法找到它取决于你)。而且它可能工作。
如果它做工作..请回复。
另外……恕我直言……我在 Linux 机器上运行 Windows 虚拟机来玩游戏。Wine 有一个单线程同步模型,通常不适合运行游戏。