kernel32.dll вино |NOOB ВНИМАНИЕ |
Я пытаюсь запустить программу через Wine. Он возвращает ошибку, относящуюся к KERNEL32.dll.WakeAllConditionVariable. Есть также большие отладочные блоки, которые я недостаточно опытен, чтобы читать. Я пробовал Google, но похоже, что в базе данных Wine нечего предложить. БЫСТРОЕ ЗАМЕЧАНИЕ: я попытался запустить его в чистом 32-битном винном префиксе, но безуспешно. В любом случае, мне нужно, чтобы он все равно работал в этом wineprefix. Без лишних слов, вот вся необработанная информация, которую я могу предложить.
yarden@Yarden-Desktop:~/.Skyrim/drive_c/users/yarden/Downloads/LOOT.0.9.0-0-g44a0d85.32.bit$ wine LOOT.exe
fixme:heap:HeapSetInformation 0x110000 0 0x33fd3c 4
fixme:advapi:EventRegister {5eec90ab-c022-44b2-a5dd-fd716a222a15}, 0x401123, 0x6b5c40, 0x6b5c58
fixme:thread:AcquireSRWLockExclusive (0x6c6dac): stub
fixme:thread:ReleaseSRWLockExclusive (0x6c6dac): stub
fixme:thread:AcquireSRWLockExclusive (0x6c6dac): stub
fixme:thread:ReleaseSRWLockExclusive (0x6c6dac): stub
fixme:thread:AcquireSRWLockExclusive (0x6c6dac): stub
fixme:thread:ReleaseSRWLockExclusive (0x6c6dac): stub
wine: Call from 0x7bc4cf69 to unimplemented function KERNEL32.dll.WakeAllConditionVariable, aborting
wine: Unimplemented function KERNEL32.dll.WakeAllConditionVariable called at address 0x7bc4cf69 (thread 0022), starting debugger...
Также есть вывод отладчика, вот и все.
Unhandled exception: unimplemented function KERNEL32.dll.WakeAllConditionVariable called in 32-bit code (0x7bc4cf69).
Register dump:
CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
EIP:7bc4cf69 ESP:0033f4e4 EBP:0033f558 EFLAGS:00200216( - -- I -A-P- )
EAX:006b385e EBX:7bcbe000 ECX:0033f56c EDX:7bcd8f40
ESI:0033f4fc EDI:006c6d68
Stack dump:
0x0033f4e4: 7ba53648 0033f528 7bc4cf43 00000000
0x0033f4f4: 7ba53648 7b88d444 80000100 00000001
0x0033f504: 00000000 7bc4cf69 00000002 006b3438
0x0033f514: 006b385e f7581feb 7b8ae000 0033f590
0x0033f524: 006c6d68 0033f558 7b872a15 00000000
0x0033f534: 7ba53648 7b88d444 7b880bac 006c6dac
Backtrace:
=>0 0x7bc4cf69 call_dll_entry_point+0x449() in ntdll (0x0033f558)
1 0x0022000f (0x0033f584)
2 0x00553ef0 in loot (+0x153eef) (0x0033f5a0)
3 0x00554024 in loot (+0x154023) (0x0033f5e4)
4 0x0053ae11 in loot (+0x13ae10) (0x0033f620)
5 0x0053ac68 in loot (+0x13ac67) (0x0033f63c)
6 0x0053ad05 in loot (+0x13ad04) (0x0033f688)
7 0x0051f9ac in loot (+0x11f9ab) (0x0033fc4c)
8 0x0052c051 in loot (+0x12c050) (0x0033fc74)
9 0x0051b56c in loot (+0x11b56b) (0x0033fc98)
10 0x004ff278 in loot (+0xff277) (0x0033fdf4)
11 0x005e79f3 in loot (+0x1e79f2) (0x0033fe40)
12 0x7b85a3fc call_process_entry+0xb() in kernel32 (0x0033fe58)
13 0x7b85b3ea ExitProcess+0xfe9() in kernel32 (0x0033fe88)
14 0x7bc7703c call_thread_func_wrapper+0xb() in ntdll (0x0033fea8)
15 0x7bc79e5d call_thread_func+0xfc() in ntdll (0x0033ffa8)
16 0x7bc7701a RtlRaiseException+0x21() in ntdll (0x0033ffc8)
17 0x7bc4d277 call_dll_entry_point+0x756() in ntdll (0x0033ffe8)
18 0xf758633d wine_call_on_stack+0x1c() in libwine.so.1 (0x00000000)
19 0xf75864a0 wine_switch_to_stack+0x1f() in libwine.so.1 (0xffea72a8)
20 0x7bc528d7 LdrInitializeThunk+0x336() in ntdll (0xffea7308)
21 0x7b861029 __wine_kernel_init+0x888() in kernel32 (0xffea8478)
22 0x7bc52e33 __wine_process_init+0x152() in ntdll (0xffea84e8)
23 0xf7583dff wine_init+0x30e() in libwine.so.1 (0xffea8548)
24 0x7bf00d42 main+0x81() in <wine-loader> (0xffea8998)
25 0xf7397637 __libc_start_main+0xf6() in libc.so.6 (0x00000000)
0x7bc4cf69 call_dll_entry_point+0x449 in ntdll: addl $12,%esp
Modules:
Module Address Debug info Name (129 modules)
PE 400000- 6ee000 Export loot
PE 10000000-12f89000 Deferred libcef
ELF 7b800000-7ba54000 Dwarf kernel32<elf>
\-PE 7b810000-7ba54000 \ kernel32
ELF 7bc00000-7bcda000 Dwarf ntdll<elf>
\-PE 7bc10000-7bcda000 \ ntdll
ELF 7bf00000-7bf04000 Dwarf <wine-loader>
ELF 7d007000-7d01d000 Deferred libgpg-error.so.0
ELF 7d01d000-7d092000 Deferred libpcre.so.3
ELF 7d092000-7d0af000 Deferred libgcc_s.so.1
ELF 7d0af000-7d15e000 Deferred libgcrypt.so.20
ELF 7d15e000-7d184000 Deferred liblzma.so.5
ELF 7d184000-7d18d000 Deferred librt.so.1
ELF 7d18d000-7d1b3000 Deferred libselinux.so.1
ELF 7d1b3000-7d241000 Deferred libsystemd.so.0
ELF 7d241000-7d24a000 Deferred libffi.so.6
ELF 7d24a000-7d263000 Deferred libresolv.so.2
ELF 7d263000-7d268000 Deferred libkeyutils.so.1
ELF 7d268000-7d2c2000 Deferred libdbus-1.so.3
ELF 7d2c2000-7d34e000 Deferred libgmp.so.10
ELF 7d34e000-7d383000 Deferred libhogweed.so.4
ELF 7d383000-7d3bf000 Deferred libnettle.so.6
ELF 7d3bf000-7d3d4000 Deferred libtasn1.so.6
ELF 7d3d4000-7d408000 Deferred libidn.so.11
ELF 7d408000-7d46a000 Deferred libp11-kit.so.0
ELF 7d46a000-7d477000 Deferred libkrb5support.so.0
ELF 7d477000-7d4a8000 Deferred libk5crypto.so.3
ELF 7d4a8000-7d57f000 Deferred libkrb5.so.3
ELF 7d57f000-7d6d7000 Deferred libgnutls.so.30
ELF 7d6d7000-7d729000 Deferred libgssapi_krb5.so.2
ELF 7d729000-7d7b0000 Deferred libcups.so.2
ELF 7d7da000-7d80f000 Deferred uxtheme<elf>
\-PE 7d7e0000-7d80f000 \ uxtheme
ELF 7d80f000-7d816000 Deferred libxfixes.so.3
ELF 7d816000-7d821000 Deferred libxcursor.so.1
ELF 7d821000-7d834000 Deferred libxi.so.6
ELF 7d834000-7d838000 Deferred libxcomposite.so.1
ELF 7d838000-7d845000 Deferred libxrandr.so.2
ELF 7d845000-7d851000 Deferred libxrender.so.1
ELF 7d851000-7d858000 Deferred libxxf86vm.so.1
ELF 7d858000-7d85c000 Deferred libxinerama.so.1
ELF 7d85c000-7d863000 Deferred libxdmcp.so.6
ELF 7d863000-7d867000 Deferred libxau.so.6
ELF 7d867000-7d88d000 Deferred libxcb.so.1
ELF 7d88d000-7d9d8000 Deferred libx11.so.6
ELF 7d9d8000-7d9ed000 Deferred libxext.so.6
ELF 7d9ee000-7d9f3000 Deferred libcom_err.so.2
ELF 7d9f3000-7da07000 Deferred libavahi-client.so.3
ELF 7da07000-7da15000 Deferred libavahi-common.so.3
ELF 7da17000-7daa4000 Deferred winex11<elf>
\-PE 7da20000-7daa4000 \ winex11
ELF 7dc2a000-7dc53000 Deferred libexpat.so.1
ELF 7dc53000-7dc9c000 Deferred libfontconfig.so.1
ELF 7dcbe000-7dce9000 Deferred libpng12.so.0
ELF 7dce9000-7dd99000 Deferred libfreetype.so.6
ELF 7dd99000-7ddbc000 Deferred libtinfo.so.5
ELF 7ddbc000-7dde2000 Deferred libncurses.so.5
ELF 7de0c000-7de30000 Deferred imm32<elf>
\-PE 7de10000-7de30000 \ imm32
ELF 7de30000-7de55000 Deferred iphlpapi<elf>
\-PE 7de40000-7de55000 \ iphlpapi
ELF 7de55000-7de81000 Deferred netapi32<elf>
\-PE 7de60000-7de81000 \ netapi32
ELF 7de81000-7deb1000 Deferred secur32<elf>
\-PE 7de90000-7deb1000 \ secur32
ELF 7deb1000-7dedb000 Deferred msacm32<elf>
\-PE 7dec0000-7dedb000 \ msacm32
ELF 7dedb000-7df93000 Deferred winmm<elf>
\-PE 7dee0000-7df93000 \ winmm
ELF 7df93000-7dfb5000 Deferred oleacc<elf>
\-PE 7dfa0000-7dfb5000 \ oleacc
ELF 7dfb5000-7dfcd000 Deferred wtsapi32<elf>
\-PE 7dfc0000-7dfcd000 \ wtsapi32
ELF 7dfcd000-7dff4000 Deferred mpr<elf>
\-PE 7dfd0000-7dff4000 \ mpr
ELF 7dff4000-7e00f000 Deferred libz.so.1
ELF 7e024000-7e039000 Deferred dhcpcsvc<elf>
\-PE 7e030000-7e039000 \ dhcpcsvc
ELF 7e039000-7e0b0000 Deferred wininet<elf>
\-PE 7e040000-7e0b0000 \ wininet
ELF 7e0b0000-7e14c000 Deferred urlmon<elf>
\-PE 7e0c0000-7e14c000 \ urlmon
ELF 7e14c000-7e164000 Deferred userenv<elf>
\-PE 7e150000-7e164000 \ userenv
ELF 7e164000-7e291000 Deferred oleaut32<elf>
\-PE 7e180000-7e291000 \ oleaut32
ELF 7e291000-7e376000 Deferred comdlg32<elf>
\-PE 7e2a0000-7e376000 \ comdlg32
ELF 7e376000-7e3b2000 Deferred winspool<elf>
\-PE 7e380000-7e3b2000 \ winspool
ELF 7e3b2000-7e3c6000 Deferred psapi<elf>
\-PE 7e3c0000-7e3c6000 \ psapi
ELF 7e3c6000-7e407000 Deferred usp10<elf>
\-PE 7e3d0000-7e407000 \ usp10
ELF 7e407000-7e4d4000 Deferred crypt32<elf>
\-PE 7e410000-7e4d4000 \ crypt32
ELF 7e4d4000-7e50f000 Deferred winhttp<elf>
\-PE 7e4e0000-7e50f000 \ winhttp
ELF 7e50f000-7e543000 Deferred ws2_32<elf>
\-PE 7e520000-7e543000 \ ws2_32
ELF 7e543000-7e5bf000 Deferred rpcrt4<elf>
\-PE 7e550000-7e5bf000 \ rpcrt4
ELF 7e5bf000-7e6ee000 Deferred ole32<elf>
\-PE 7e5e0000-7e6ee000 \ ole32
ELF 7e6ee000-7e7e3000 Deferred comctl32<elf>
\-PE 7e700000-7e7e3000 \ comctl32
ELF 7e7e3000-7e859000 Deferred shlwapi<elf>
\-PE 7e7f0000-7e859000 \ shlwapi
ELF 7e859000-7ea82000 Deferred shell32<elf>
\-PE 7e870000-7ea82000 \ shell32
ELF 7ea82000-7eaee000 Deferred advapi32<elf>
\-PE 7ea90000-7eaee000 \ advapi32
ELF 7eaee000-7ec05000 Deferred gdi32<elf>
\-PE 7eb00000-7ec05000 \ gdi32
ELF 7ec05000-7ed53000 Deferred user32<elf>
\-PE 7ec20000-7ed53000 \ user32
ELF 7ef53000-7ef66000 Deferred libnss_files.so.2
ELF 7ef66000-7ef81000 Deferred libnsl.so.1
ELF 7ef81000-7efd6000 Deferred libm.so.6
ELF 7efe7000-7f000000 Deferred version<elf>
\-PE 7eff0000-7f000000 \ version
ELF f737a000-f737f000 Deferred libdl.so.2
ELF f737f000-f7535000 Dwarf libc.so.6
ELF f7536000-f7553000 Deferred libpthread.so.0
ELF f7553000-f7560000 Deferred libnss_nis.so.2
ELF f7573000-f757d000 Deferred libnss_compat.so.2
ELF f757d000-f7732000 Dwarf libwine.so.1
ELF f7734000-f7759000 Deferred ld-linux.so.2
ELF f775b000-f775c000 Deferred [vdso].so
Threads:
process tid prio (all id:s are in hex)
0000000e services.exe
0000001e 0
0000001d 0
00000014 0
00000010 0
0000000f 0
00000012 winedevice.exe
0000001c 0
00000019 0
00000017 0
00000013 0
0000001a plugplay.exe
00000020 0
0000001f 0
0000001b 0
00000018 ModOrganizer.exe
00000041 0
0000003c 0
00000040 0
00000033 0
00000032 0
00000034 0
00000035 0
0000002e 0
0000002c explorer.exe
00000037 0
00000036 0
00000021 (D) C:\users\yarden\Downloads\LOOT.0.9.0-0-g44a0d85.32.bit\LOOT.exe
00000022 0 <==
System information:
Wine build: wine-1.6.2
Platform: i386 (WOW64)
Host system: Linux
Host version: 4.4.0-22-generic
Извините за отвратительное форматирование, я впервые пишу вопрос, и я не знаю, как отформатировать
2 ответа
Ваша программа пыталась вызвать KERNEL32.DLL
функция называется WakeAllConditionVariable
, Функция подробно описана здесь. Wine находится в стадии разработки, и не каждая функция реализована в каждой DLL.
Несмотря на то, что мои дни хакерских игр в Wine ушли в далекое прошлое, просматривая документацию по этой функции, кажется, что это не сложно реализовать. Лучше всего обратиться на форум разработчиков Wine и задать свой вопрос там. Я знаю, что если бы у меня уже была проверена база кода Wine и исправления ожидали отправки, был бы большой шанс, что я тоже внесу это исправление.
Кроме того, попробуйте загрузить последнюю версию Wine из исходного кода и скомпилировать ее. Возможно, кто-то уже реализовал эту функцию, но она еще не вошла в стабильную версию.
Отредактировано, чтобы добавить: разработчики Wine выбирают, какие функции реализовать, видя, какие функции фактически вызываются программами. Мне кажется весьма вероятным найти решение на форумах Wine.
Wine не поддерживает все приложения Windows. Вы пытались открыть файл.exe в моно? (Пакет-монодевел)