于是我下载了 PlayOnLinux(以及 wine),并在 gog.com 上购买了该游戏。下载了安装文件并尝试通过 playonlinux 进行安装。安装快结束时,我在内存地址处收到错误,导致一切都失败。以下是日志:
Unhandled exception: page fault on read access to 0x00001970 in 32-bit code (0x00001970).
Register dump:
CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
EIP:00001970 ESP:0033fb40 EBP:0033fcfc EFLAGS:00210202( R- -- I - - - )
EAX:00000001 EBX:7c70ade0 ECX:f77c2000 EDX:00000000
ESI:00000001 EDI:7d807eac
Stack dump:
0x0033fb40: f77ad974 f77c2918 f77c2c08 7c6dd340
0x0033fb50: 7c6ddb68 7c6decb0 7c6df490 7c6def90
0x0033fb60: 7c6df768 7c6e0228 7c6e0668 7c6e0ac0
0x0033fb70: 7c6e0ec8 7c6e1330 7c6e17b8 7c6e1b58
0x0033fb80: 7c6e1f08 7c6e2298 7c6e2688 7c6e2a90
0x0033fb90: 7c6e2f20 7c6e32e0 7c6e37d8 7c6e4b50
Backtrace:
=>0 0x00001970 (0x0033fcfc)
1 0xf7498973 in libc.so.6 (+0x2e972) (0xf761d1e0)
2 0xf74989cf exit+0x1e() in libc.so.6 (0x0033fdfc)
3 0x7bc5f496 NtTerminateProcess+0x65() in ntdll (0x0033fdfc)
4 0x7b85f96f process_ExitProcess+0x2e() in kernel32 (0x0033fe1c)
5 0x7b85d0d2 ExitProcess+0x11() in kernel32 (0x0033fe30)
6 0x00405197 in setup_homm3_complete_2.0.0.16.tmC:\users\gyrfalcon\Temp\is-FROP6.tmp\setup_homm3_complete_2.0.0.16.tmp (+0x5196) (0x004fe7f0)
0x00001970: -- no code accessible --
Modules:
Module Address Debug info Name (112 modules)
PE 400000- 537000 Export setup_homm3_complete_2.0.0.16.tmC:\users\gyrfalcon\Temp\is-FROP6.tmp\setup_homm3_complete_2.0.0.16.tmp
ELF 78ca9000-7b800000 Deferred libllvm-3.8.so.1
ELF 7b800000-7b8fe000 Dwarf kernel32<elf>
\-PE 7b810000-7b8fe000 \ kernel32
ELF 7bc00000-7bcc3000 Dwarf ntdll<elf>
\-PE 7bc10000-7bcc3000 \ ntdll
ELF 7bf00000-7bf03000 Deferred <wine-loader>
ELF 7c0ea000-7c200000 Deferred libasound.so.2
ELF 7c6b1000-7c6dd000 Deferred winealsa<elf>
ELF 7c7ed000-7c80f000 Deferred mmdevapi<elf>
\-PE 7c7f0000-7c80f000 \ mmdevapi
ELF 7c80f000-7c846000 Deferred libtxc_dxtn.so
ELF 7c846000-7c862000 Deferred libbsd.so.0
ELF 7c862000-7c885000 Deferred libtinfo.so.5
ELF 7c885000-7c8bc000 Deferred libedit.so.2
ELF 7c8bc000-7c8c5000 Deferred libffi.so.6
ELF 7c8c5000-7c8e2000 Deferred libgcc_s.so.1
ELF 7ca59000-7ca75000 Deferred libelf.so.1
ELF 7ca75000-7ca80000 Deferred libdrm_amdgpu.so.1
ELF 7ca80000-7ca8e000 Deferred libdrm_radeon.so.1
ELF 7ca8e000-7ca98000 Deferred libdrm_nouveau.so.2
ELF 7ca98000-7d658000 Deferred swrast_dri.so
ELF 7d658000-7d66a000 Deferred libdrm.so.2
ELF 7d66a000-7d670000 Deferred libxcb-dri2.so.0
ELF 7d670000-7d68b000 Deferred libxcb-glx.so.0
ELF 7d68b000-7d68e000 Deferred libx11-xcb.so.1
ELF 7d68e000-7d692000 Deferred libxdamage.so.1
ELF 7d692000-7d6ae000 Deferred libglapi.so.0
ELF 7d6ae000-7d6b1000 Deferred libxshmfence.so.1
ELF 7d6b1000-7d6b9000 Deferred libxcb-sync.so.1
ELF 7d6b9000-7d6bd000 Deferred libxcb-present.so.0
ELF 7d6bd000-7d6c1000 Deferred libxcb-dri3.so.0
ELF 7d6c1000-7d730000 Deferred libgl.so.1
ELF 7d730000-7d800000 Deferred opengl32<elf>
\-PE 7d750000-7d800000 \ opengl32
ELF 7d800000-7d809000 Deferred librt.so.1
ELF 7d826000-7d839000 Deferred sfc_os<elf>
\-PE 7d830000-7d839000 \ sfc_os
ELF 7d839000-7d84c000 Deferred sfc<elf>
\-PE 7d840000-7d84c000 \ sfc
ELF 7d99d000-7d9da000 Deferred usp10<elf>
\-PE 7d9a0000-7d9da000 \ usp10
ELF 7dbd7000-7dd03000 Deferred wined3d<elf>
\-PE 7dbe0000-7dd03000 \ wined3d
ELF 7dd03000-7dd67000 Deferred ddraw<elf>
\-PE 7dd10000-7dd67000 \ ddraw
ELF 7de4f000-7de70000 Deferred imm32<elf>
\-PE 7de60000-7de70000 \ imm32
ELF 7de87000-7deba000 Deferred uxtheme<elf>
\-PE 7de90000-7deba000 \ uxtheme
ELF 7deba000-7dec1000 Deferred libxfixes.so.3
ELF 7dec1000-7decc000 Deferred libxcursor.so.1
ELF 7df6e000-7df98000 Deferred libexpat.so.1
ELF 7df98000-7dfe1000 Deferred libfontconfig.so.1
ELF 7dfe1000-7dff4000 Deferred libxi.so.6
ELF 7dff4000-7dff8000 Deferred libxcomposite.so.1
ELF 7dff8000-7e005000 Deferred libxrandr.so.2
ELF 7e005000-7e011000 Deferred libxrender.so.1
ELF 7e011000-7e018000 Deferred libxxf86vm.so.1
ELF 7e018000-7e01f000 Deferred libxdmcp.so.6
ELF 7e01f000-7e045000 Deferred libxcb.so.1
ELF 7e045000-7e04b000 Deferred libuuid.so.1
ELF 7e04b000-7e196000 Deferred libx11.so.6
ELF 7e196000-7e1ab000 Deferred libxext.so.6
ELF 7e1ab000-7e1c5000 Deferred libice.so.6
ELF 7e1c5000-7e1ce000 Deferred libsm.so.6
ELF 7e1ce000-7e258000 Deferred winex11<elf>
\-PE 7e1e0000-7e258000 \ winex11
ELF 7e258000-7e283000 Deferred libpng12.so.0
ELF 7e283000-7e297000 Deferred libz.so.1
ELF 7e297000-7e347000 Deferred libfreetype.so.6
ELF 7e364000-7e3a0000 Deferred winspool<elf>
\-PE 7e370000-7e3a0000 \ winspool
ELF 7e3a0000-7e47f000 Deferred comdlg32<elf>
\-PE 7e3b0000-7e47f000 \ comdlg32
ELF 7e47f000-7e4ea000 Deferred shlwapi<elf>
\-PE 7e490000-7e4ea000 \ shlwapi
ELF 7e4ea000-7e6fb000 Deferred shell32<elf>
\-PE 7e500000-7e6fb000 \ shell32
ELF 7e6fb000-7e7ee000 Deferred comctl32<elf>
\-PE 7e700000-7e7ee000 \ comctl32
ELF 7e7ee000-7e813000 Deferred mpr<elf>
\-PE 7e7f0000-7e813000 \ mpr
ELF 7e813000-7e826000 Deferred msimg32<elf>
\-PE 7e820000-7e826000 \ msimg32
ELF 7e826000-7e89c000 Deferred rpcrt4<elf>
\-PE 7e830000-7e89c000 \ rpcrt4
ELF 7e89c000-7e99d000 Deferred gdi32<elf>
\-PE 7e8b0000-7e99d000 \ gdi32
ELF 7e99d000-7eadd000 Deferred user32<elf>
\-PE 7e9b0000-7eadd000 \ user32
ELF 7eadd000-7eb3e000 Deferred advapi32<elf>
\-PE 7eaf0000-7eb3e000 \ advapi32
ELF 7eb3e000-7ec44000 Deferred ole32<elf>
\-PE 7eb60000-7ec44000 \ ole32
ELF 7ec44000-7ed53000 Deferred oleaut32<elf>
\-PE 7ec60000-7ed53000 \ oleaut32
ELF 7ed53000-7ed66000 Deferred libnss_files.so.2
ELF 7ed66000-7ed73000 Deferred libnss_nis.so.2
ELF 7ed73000-7ed8e000 Deferred libnsl.so.1
ELF 7ef8e000-7efe3000 Deferred libm.so.6
ELF 7efe4000-7efe8000 Deferred libxinerama.so.1
ELF 7efe8000-7f000000 Deferred version<elf>
\-PE 7eff0000-7f000000 \ version
ELF f7460000-f7464000 Deferred libxau.so.6
ELF f7465000-f746a000 Deferred libdl.so.2
ELF f746a000-f7620000 Dwarf libc.so.6
ELF f7620000-f763d000 Deferred libpthread.so.0
ELF f7650000-f765a000 Deferred libnss_compat.so.2
ELF f765b000-f779c000 Dwarf libwine.so.1
ELF f779e000-f77c3000 Deferred ld-linux.so.2
ELF f77c5000-f77c6000 Deferred [vdso].so
Threads:
process tid prio (all id:s are in hex)
0000000e services.exe
0000001f 0
0000001e 0
00000015 0
00000010 0
0000000f 0
00000012 winedevice.exe
0000001a 0
00000014 0
00000013 0
0000001b plugplay.exe
00000020 0
0000001d 0
0000001c 0
00000024 explorer.exe
00000025 0
00000028 setup_homm3_complete_2.0.0.16.exe
00000029 0
0000002a (D) C:\users\gyrfalcon\Temp\is-FROP6.tmp\setup_homm3_complete_2.0.0.16.tmp
0000002b 0 <==
System information:
Wine build: wine-1.5.16
Platform: i386
Host system: Linux
Host version: 4.4.0-31-generic
我知道 playonlinux 可以与 gog 配合使用,因为我安装 Alpha Centauri 时也使用了同样的步骤。网上似乎没有任何东西告诉我如何将 HoMMIII 放到 Ubuntu 16.04 上。如果我可以提供任何其他详细信息,请告诉我。
提前致谢。
答案1
GOG 的很多游戏都让我内存地址安装结束时出现错误,但按 3-4 次后,安装就结束了,我可以添加快捷方式。
如果对话框没有显示添加快捷方式,您可以尝试手动添加,方法是:配置 => 为该虚拟驱动器创建新的快捷方式