为了在 Wine 上使用某个 Windows 程序,我需要安装 d3dx9_43(Directx 驱动程序),但我不确定如何安装。
如果没有这个,它会给我这个错误:
Unhandled exception: page fault on read access to 0x00000000 in 32-bit code (0x004d65f6).
Register dump:
CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
EIP:004d65f6 ESP:0033f4e8 EBP:0033f8b4 EFLAGS:00210282( R- -- I S - - - )
EAX:80040154 EBX:00000000 ECX:00000000 EDX:80040154
ESI:051bb020 EDI:00000000
Stack dump:
0x0033f4e8: 00000000 0033f8c8 004def49 0033f8c8
0x0033f4f8: 0000ac44 42680000 fffffffe 0033f8c8
0x0033f508: 00000001 1d339300 0033f530 7e8fa000
0x0033f518: 7e9af4cb 7ea4a000 0033fa04 0001007e
0x0033f528: 051bb020 7e9ce1ee 0000000c 00000000
0x0033f538: 00000001 0033f56c fffffffc ffffffd6
000c: sel=0067 base=00000000 limit=00000000 32-bit rw-
Backtrace:
=>0 0x004d65f6 in emulator (+0xd65f6) (0x0033f8b4)
1 0x004e7f46 in emulator (+0xe7f45) (0x0033fdd0)
2 0x0047d083 in emulator (+0x7d082) (0x0033fe60)
3 0x7b85e5cc call_process_entry+0xb() in kernel32 (0x0033fe78)
4 0x7b85f653 in kernel32 (+0x4f652) (0x0033feb8)
5 0x7bc799b0 call_thread_func_wrapper+0xb() in ntdll (0x0033fed8)
6 0x7bc7c93d call_thread_func+0x7c() in ntdll (0x0033ffa8)
7 0x7bc7998e RtlRaiseException+0x21() in ntdll (0x0033ffc8)
8 0x7bc4e8fe call_dll_entry_point+0x7ed() in ntdll (0x0033ffe8)
9 0xf75e150d wine_call_on_stack+0x1c() in libwine.so.1 (0x00000000)
10 0xf75e15cb wine_switch_to_stack+0x2a() in libwine.so.1 (0xffcd8b78)
11 0x7bc541e2 LdrInitializeThunk+0x3a1() in ntdll (0xffcd8bd8)
12 0x7b865bdd __wine_kernel_init+0xa0c() in kernel32 (0xffcd9cf8)
13 0x7bc547a3 __wine_process_init+0x192() in ntdll (0xffcd9d88)
14 0xf75dec70 wine_init+0x30f() in libwine.so.1 (0xffcd9de8)
15 0x7bf00fdc main+0xfb() in <wine-loader> (0xffcda238)
16 0xf73f9a83 __libc_start_main+0xf2() in libc.so.6 (0x00000000)
0x004d65f6: movl 0x0(%edi),%eax
Modules:
Module Address Debug info Name (119 modules)
PE 400000- 1135000 Export emulator
PE 10000000-101e5000 Deferred d3dx9_42
ELF 79e40000-7b7fa000 Deferred libllvm-3.4.so.1
ELF 7b800000-7ba5b000 Dwarf kernel32<elf>
\-PE 7b810000-7ba5b000 \ kernel32
ELF 7bc00000-7bcdb000 Dwarf ntdll<elf>
\-PE 7bc10000-7bcdb000 \ ntdll
ELF 7bf00000-7bf04000 Dwarf <wine-loader>
ELF 7c0a8000-7c0e9000 Deferred usp10<elf>
\-PE 7c0b0000-7c0e9000 \ usp10
ELF 7c6f0000-7c727000 Deferred libtxc_dxtn.so
ELF 7c748000-7c76a000 Deferred libtinfo.so.5
ELF 7c770000-7c78d000 Deferred libgcc_s.so.1
ELF 7c880000-7c88f000 Deferred libdrm_radeon.so.1
ELF 7c890000-7cc6b000 Deferred libgallium.so.0
ELF 7cc90000-7d07a000 Deferred r600_dri.so
ELF 7d090000-7d0ae000 Deferred libcgmanager.so.0
ELF 7d0b8000-7d0d0000 Deferred libelf.so.1
ELF 7d2c0000-7d2cd000 Deferred libdrm.so.2
ELF 7d2d0000-7d2d3000 Deferred libxshmfence.so.1
ELF 7d2d8000-7d2df000 Deferred libxcb-sync.so.1
ELF 7d2e0000-7d2e4000 Deferred libxcb-present.so.0
ELF 7d2e8000-7d2ec000 Deferred libxcb-dri3.so.0
ELF 7d2f0000-7d2f6000 Deferred libxcb-dri2.so.0
ELF 7d2f8000-7d310000 Deferred libxcb-glx.so.0
ELF 7d310000-7d313000 Deferred libx11-xcb.so.1
ELF 7d318000-7d330000 Deferred libglapi.so.0
ELF 7d330000-7d390000 Deferred libgl.so.1
ELF 7d398000-7d3ab000 Deferred libudev.so.1
ELF 7d3b0000-7d3d5000 Deferred imm32<elf>
\-PE 7d3c0000-7d3d5000 \ imm32
ELF 7d4f0000-7d520000 Deferred p11-kit-trust.so
ELF 7d520000-7d529000 Deferred librt.so.1
ELF 7d530000-7d537000 Deferred libffi.so.6
ELF 7d538000-7d53d000 Deferred libgpg-error.so.0
ELF 7d540000-7d558000 Deferred libresolv.so.2
ELF 7d558000-7d55c000 Deferred libkeyutils.so.1
ELF 7d560000-7d5ab000 Deferred libdbus-1.so.3
ELF 7d5b0000-7d5ec000 Deferred libp11-kit.so.0
ELF 7d5f0000-7d604000 Deferred libtasn1.so.6
ELF 7d608000-7d68f000 Deferred libgcrypt.so.11
ELF 7d690000-7d69c000 Deferred libkrb5support.so.0
ELF 7d6a0000-7d6d0000 Deferred libk5crypto.so.3
ELF 7d6d0000-7d78e000 Deferred libkrb5.so.3
ELF 7d790000-7d7a2000 Deferred libavahi-client.so.3
ELF 7d7a8000-7d86e000 Deferred libgnutls.so.26
ELF 7d870000-7d8b5000 Deferred libgssapi_krb5.so.2
ELF 7d8b8000-7d925000 Deferred libcups.so.2
ELF 7d928000-7d92c000 Deferred libxdamage.so.1
ELF 7d930000-7d943000 Deferred gnome-keyring-pkcs11.so
ELF 7d948000-7d97f000 Deferred uxtheme<elf>
\-PE 7d950000-7d97f000 \ uxtheme
ELF 7d980000-7d986000 Deferred libxfixes.so.3
ELF 7d988000-7d993000 Deferred libxcursor.so.1
ELF 7d998000-7d99d000 Deferred libcom_err.so.2
ELF 7d9a0000-7d9ae000 Deferred libavahi-common.so.3
ELF 7d9b8000-7d9c3000 Deferred libxrandr.so.2
ELF 7d9c8000-7d9d9000 Deferred libxi.so.6
ELF 7d9e0000-7d9e4000 Deferred libxcomposite.so.1
ELF 7d9e8000-7d9ef000 Deferred libxdmcp.so.6
ELF 7d9f0000-7d9f4000 Deferred libxau.so.6
ELF 7d9f8000-7da1a000 Deferred libxcb.so.1
ELF 7da20000-7db54000 Deferred libx11.so.6
ELF 7db58000-7db6b000 Deferred libxext.so.6
ELF 7db70000-7db7b000 Deferred libxrender.so.1
ELF 7db80000-7db86000 Deferred libxxf86vm.so.1
ELF 7db88000-7db8c000 Deferred libxinerama.so.1
ELF 7db90000-7dc22000 Deferred winex11<elf>
\-PE 7dba0000-7dc22000 \ winex11
ELF 7dce8000-7dd11000 Deferred libexpat.so.1
ELF 7dd18000-7dd53000 Deferred libfontconfig.so.1
ELF 7dd78000-7dda0000 Deferred libpng12.so.0
ELF 7dda0000-7ddba000 Deferred libz.so.1
ELF 7ddc0000-7de60000 Deferred libfreetype.so.6
ELF 7de80000-7dec0000 Deferred winspool<elf>
\-PE 7de90000-7dec0000 \ winspool
ELF 7dec0000-7df3a000 Deferred shlwapi<elf>
\-PE 7ded0000-7df3a000 \ shlwapi
ELF 7df40000-7e173000 Deferred shell32<elf>
\-PE 7df50000-7e173000 \ shell32
ELF 7e178000-7e263000 Deferred comdlg32<elf>
\-PE 7e180000-7e263000 \ comdlg32
ELF 7e268000-7e29e000 Deferred ws2_32<elf>
\-PE 7e270000-7e29e000 \ ws2_32
ELF 7e2a0000-7e348000 Deferred msvcrt<elf>
\-PE 7e2b0000-7e348000 \ msvcrt
ELF 7e348000-7e3c9000 Deferred rpcrt4<elf>
\-PE 7e350000-7e3c9000 \ rpcrt4
ELF 7e3d0000-7e50c000 Deferred ole32<elf>
\-PE 7e3f0000-7e50c000 \ ole32
ELF 7e510000-7e52c000 Deferred dinput8<elf>
\-PE 7e520000-7e52c000 \ dinput8
ELF 7e530000-7e63f000 Deferred opengl32<elf>
\-PE 7e550000-7e63f000 \ opengl32
ELF 7e640000-7e780000 Deferred wined3d<elf>
\-PE 7e650000-7e780000 \ wined3d
ELF 7e780000-7e7bd000 Deferred d3d9<elf>
\-PE 7e790000-7e7bd000 \ d3d9
ELF 7e7c0000-7e832000 Deferred advapi32<elf>
\-PE 7e7d0000-7e832000 \ advapi32
ELF 7e838000-7e955000 Deferred gdi32<elf>
\-PE 7e840000-7e955000 \ gdi32
ELF 7e958000-7eab2000 Deferred user32<elf>
\-PE 7e970000-7eab2000 \ user32
ELF 7eab8000-7ebbf000 Deferred comctl32<elf>
\-PE 7eac0000-7ebbf000 \ comctl32
ELF 7ebc0000-7ebcd000 Deferred libnss_files.so.2
ELF 7ebd0000-7ebdc000 Deferred libnss_nis.so.2
ELF 7ebe0000-7ebf9000 Deferred libnsl.so.1
ELF 7ec08000-7ec22000 Deferred version<elf>
\-PE 7ec10000-7ec22000 \ version
ELF 7ef98000-7efde000 Deferred libm.so.6
ELF 7eff0000-7eff9000 Deferred libnss_compat.so.2
ELF f73e0000-f7590000 Dwarf libc.so.6
ELF f7590000-f7595000 Deferred libdl.so.2
ELF f7598000-f75b4000 Deferred libpthread.so.0
ELF f75d8000-f778d000 Dwarf libwine.so.1
ELF f7790000-f77b2000 Deferred ld-linux.so.2
ELF f77b9000-f77ba000 Deferred [vdso].so
Threads:
process tid prio (all id:s are in hex)
0000000e services.exe
0000001e 0
0000001d 0
0000001c 0
00000016 0
00000014 0
00000010 0
0000000f 0
00000012 winedevice.exe
0000001b 0
00000018 0
00000017 0
00000013 0
00000019 plugplay.exe
00000020 0
0000001f 0
0000001a 0
00000021 explorer.exe
00000023 0
00000022 0
00000024 (D) H:\Desktop\Sega Model 2\emulator.exe
00000026 0
00000025 0 <==
System information:
Wine build: wine-1.6.2
Platform: i386 (WOW64)
Host system: Linux
Host version: 3.13.0-39-generic
有人能告诉我如何解决这个问题吗?
提前谢谢您 :)
Ps:如果有帮助的话,我想要使用的程序是一个.exe - 它不需要安装,另外,一些消息来源说我必须使用 Winetricks 来解决这个问题,但是如何呢?
更新:我安装了 d3dx9_43.dll,但是现在当我加载 rom 时,控制台中出现此错误:
fixme:thread:start_thread 已启动本机线程 00000024 fixme:win:EnumDisplayDevicesW ((null),0,0x32eea8,0x00000000),存根!fixme:d3d:swapchain_init 应用程序请求了多个后台缓冲区,但不支持此功能。如果可能,请将应用程序配置为使用双缓冲(1 个后台缓冲区)。 fixme:d3d9:Direct3DShaderValidatorCreate9 stub err:ole:CoGetClassObject 类 {3eda9b49-2085-498b-9bb2-39a6778493de} 未注册 err:ole:CoGetClassObject 无法为上下文 0x1 创建类对象 {3eda9b49-2085-498b-9bb2-39a6778493de} wine:在地址 0x4d65f6(线程 0009)处读取访问 0x00000000 时出现未处理的页面错误,正在启动调试器...
答案1
安装winetricks
:
sudo apt-get install winetricks
捷径
根据您是否有自定义WINEPREFIX
、WINEARCH
等,导出它们。如果您不知道这些是什么意思,不用担心,您可以忽略它们。现在运行:
winetricks d3dx9_43
路漫漫其修远兮
您还可以使用 Winetricks GUI:
- 选择默认的 wineprefix:
- 选择“安装 Windows DLL 或组件”:
- 选择
d3dx9_43
: - 现在它将下载 DirectX 包,该包有几百 MB,所以如果您的网络不够快,那就去喝杯咖啡吧: