https://bugs.winehq.org/show_bug.cgi?id=46281
Bug ID: 46281 Summary: Archicad 22 does not start at all Product: Wine Version: 4.0-rc1 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: disnel@disnel.com Distribution: ---
Created attachment 62991 --> https://bugs.winehq.org/attachment.cgi?id=62991 Log from unsuccessfull start of Archicad 22
Archicad 22, successfully installed after winetricks vcrun25, fails to start. Tested ARCHICAD.exe and ARCHICAD Starter.exe from main Archicad folder. See attached log, please.
https://bugs.winehq.org/show_bug.cgi?id=46281
Vaclav Cermak disnel@disnel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Distribution|--- |Ubuntu
https://bugs.winehq.org/show_bug.cgi?id=46281
Louis Lenders xerox.xerox2000x@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW CC| |xerox.xerox2000x@gmail.com Ever confirmed|0 |1 URL| |https://graphisoft.akamaize | |d.net/cdn/AC/22/USA/AC/ARCH | |ICAD-22-USA-3006-1.4.exe Keywords| |download
--- Comment #1 from Louis Lenders xerox.xerox2000x@gmail.com --- Confirming. In future please add downloadlink.
Several weird things:
The installer crashed for me in vanilla wine with a Call from to unimplemented function ntdll.dll.__wine_create_default_token, aborting That seems some remainder from old Staging?? Or maybe fault at my side?
Anyway, after winetricks vcrun2012 2015 2017, and using Staging the installation went fine.
Then the app exits silently like reporter reported.
This needs an expert to look into why this fails (hint @Focht ;)):
002f:Call KERNEL32.GetModuleHandleA(0007736c "kernel32.dll") ret=142c0a349 002f:Ret KERNEL32.GetModuleHandleA() retval=7b420000 ret=142c0a349 002f:Call KERNEL32.GetLastError() ret=142ca9178 002f:Ret KERNEL32.GetLastError() retval=00000000 ret=142ca9178 002f:Call KERNEL32.GetLastError() ret=142ca9178 002f:Ret KERNEL32.GetLastError() retval=00000000 ret=142ca9178 002f:Call KERNEL32.GetModuleHandleA(0024f530 "api-ms-win-core-debug-l1-1-0.dll") ret=142c0a2ce 002f:Ret KERNEL32.GetModuleHandleA() retval=00000000 ret=142c0a2ce 002f:Call ntdll.RtlFreeHeap(00030000,00000000,00077360) ret=142ca71d0 002f:Ret ntdll.RtlFreeHeap() retval=00000001 ret=142ca71d0 002f:Call KERNEL32.TerminateProcess(ffffffffffffffff,000000ff) ret=142bd9f53
If i set version to XP (note: it refuses to install in xp...) it gets little bit furter, i added two stubs for 2 missing functions (ShCreateDataObject and SetProcessPreferredUILanguages, then ends that it cannot find a file, that is present in the directory. But that maybe should be tracked in new bugreport
sha1sum /media/louis/aqqa/ARCHICAD-22-USA-3006-1.4.exe 981ffe19e9b03b2736dddc335c9dfc8a7cfe0750 /media/louis/aqqa/ARCHICAD-22-USA-3006-1.4.exe
https://bugs.winehq.org/show_bug.cgi?id=46281
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net Summary|Archicad 22 does not start |Multiple Windows 7+ |at all |apiset-aware applications | |fail due to Wine loader | |lacking support for | |resolving virtual dlls via | |'kernel32.GetModuleHandle' | |(Archicad 22) Component|-unknown |kernel32
--- Comment #2 from Anastasius Focht focht@gmx.net --- Hello folks,
confirming. The problem is that Wine's loader doesn't implement resolution for Windows 7+ virtual dlls (API sets).
--- snip --- ... 003f:Call KERNEL32.GetModuleHandleA(0023f4f0 "api-ms-win-core-debug-l1-1-0.dll") ret=142c0a2ce 003f:Ret KERNEL32.GetModuleHandleA() retval=00000000 ret=142c0a2ce 003f:Call ntdll.RtlFreeHeap(00010000,00000000,00071850) ret=142ca71d0 003f:Ret ntdll.RtlFreeHeap() retval=00000001 ret=142ca71d0 003f:Call ntdll.RtlFreeHeap(00010000,00000000,00071340) ret=142ca71d0 003f:Ret ntdll.RtlFreeHeap() retval=00000001 ret=142ca71d0 003f:Call KERNEL32.TerminateProcess(ffffffffffffffff,000000ff) ret=142bd9f53 --- snip ---
The requested API set is implemented in 'kernelbase.dll' and on Windows 7+ the dll is always mapped. 'kernel32.GetModuleHandle()' should obviously return a valid module handle here. The requested API set stub dll is purely "virtual" here, it doesn't need to be mapped.
https://www.geoffchappell.com/studies/windows/win32/apisetschema/history/set...
--- quote --- API-MS-Win-Core-Debug-L1-1-0 kernelbase.dll discontinued in 10.0 --- quote ---
http://www.geoffchappell.com/studies/windows/win32/apisetschema/index.htm
$ sha1sum ARCHICAD-22-USA-3006-1.4.exe 981ffe19e9b03b2736dddc335c9dfc8a7cfe0750 ARCHICAD-22-USA-3006-1.4.exe
$ du -sh ARCHICAD-22-USA-3006-1.4.exe 1.9G ARCHICAD-22-USA-3006-1.4.exe
$ wine --version wine-4.5-227-g6552b7144e
Regards
https://bugs.winehq.org/show_bug.cgi?id=46281
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED
--- Comment #3 from Nikolay Sivov bunglehead@gmail.com --- I tested with ARCHICAD-22-SWE-4018-1.2.exe, and this works now. Application still crashes, but likely not because of missing apiset mapping.
https://bugs.winehq.org/show_bug.cgi?id=46281
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #4 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 7.11.
https://bugs.winehq.org/show_bug.cgi?id=46281
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- URL|https://graphisoft.akamaize |https://web.archive.org/web |d.net/cdn/AC/22/USA/AC/ARCH |/20200122090355/https://gra |ICAD-22-USA-3006-1.4.exe |phisoft.akamaized.net/cdn/A | |C/22/USA/AC/ARCHICAD-22-USA | |-3006-1.4.exe Fixed by SHA1| |31e151362bc5e82a988a4f9ff43 | |09697525eda3f Component|kernel32 |ntdll
--- Comment #5 from Anastasius Focht focht@gmx.net --- Hello folks,
adding stable download link via Internet Archive for documentation.
https://web.archive.org/web/20200122090355/https://graphisoft.akamaized.net/...
$ sha1sum ARCHICAD-22-USA-3006-1.4.exe 981ffe19e9b03b2736dddc335c9dfc8a7cfe0750 ARCHICAD-22-USA-3006-1.4.exe
$ du -sh ARCHICAD-22-USA-3006-1.4.exe 1.9G ARCHICAD-22-USA-3006-1.4.exe
Likely fixed by commit https://source.winehq.org/git/wine.git/commitdiff/31e151362bc5e82a988a4f9ff4... and related, part of Wine 7.3 release.
--- snip --- $ git log --oneline --pretty="%h %s" wine-7.3...wine-7.2 | grep -i apiset
bf8c5afef1b api-ms-*: Get rid of the apiset placeholder files. 8c719c89196 apisetchema: Add some more misc apisets. 5f4a17a639c apisetchema: Add some more comctl32 apisets. e7af7b8ce72 apisetchema: Add some more winmm apisets. 26cd2f7e76d apisetchema: Add some more shlwapi apisets. 26c20f43ecd apisetchema: Add some more shcore apisets. 229e059d9bb apisetchema: Add some more sechost apisets. c625a28ac3c apisetchema: Add some more user32 apisets. e0a27da5286 apisetchema: Add some more gdi32 apisets. 5f99dc164a7 apisetchema: Add some more advapi32 apisets. f4d8da36e67 apisetchema: Add some more ole32 apisets. 030f9018e49 apisetchema: Add some more combase apisets. 48c63560722 apisetchema: Add some more kernel32 apisets. c4d18c82c02 apisetchema: Add some more kernelbase apisets. 77973e7e720 kernelbase: Implement IsApiSetImplemented(). cb2fb8c25eb ntdll: Implement ApiSetQueryApiSetPresence/Ex(). 7b233f3032e ntdll: Map explicitly loaded apiset dlls to their target library. 31e151362bc ntdll: Map imported apiset dlls to their target library. e3c9d73cd1d ntdll: Load the apiset schema at startup. ac5ebb6192c kernel32/tests: Add tests for apiset query functions. d40ecdd248b apisetschema: Add dll. 8a3064899a9 winebuild: Add support for building apiset data. 6f1fd16f92c winedump: Add dumping of the .apiset PE section. 8796d34a803 kernel32/tests: Add a few more tests for apisets. 0c095ccc2d5 make_specfiles: Move some ApiSet dlls to the ntdll section. ef83ca16786 make_specfiles: Sort the ApiSet dlls by name. --- snip ---
Trace log:
--- snip --- $ pwd /home/focht/.wine/drive_c/Program Files/GRAPHISOFT/ARCHICAD 22
$ WINEDEBUG=+seh,+relay,+module wine ./ARCHICAD.exe >>log.txt 2>&1 ... 0130:trace:module:map_image_into_view mapping PE file L"\??\C:\Program Files\GRAPHISOFT\ARCHICAD 22\ARCHICAD.exe" at 0x140000000-0x1499c9000 0130:trace:module:map_image_into_view mapping L"\??\C:\Program Files\GRAPHISOFT\ARCHICAD 22\ARCHICAD.exe" section .text at 0x140001000 off 400 size 2d51600 virt 2d51600 flags e0000060 0130:trace:module:map_image_into_view clearing 0x142d52600 - 0x142d53000 0130:trace:module:map_image_into_view mapping L"\??\C:\Program Files\GRAPHISOFT\ARCHICAD 22\ARCHICAD.exe" section .rdata at 0x142d53000 off 2d51a00 size 1b78a00 virt 1b78966 flags 40000040 0130:trace:module:map_image_into_view clearing 0x1448cba00 - 0x1448cc000 0130:trace:module:map_image_into_view mapping L"\??\C:\Program Files\GRAPHISOFT\ARCHICAD 22\ARCHICAD.exe" section .data at 0x1448cc000 off 48ca400 size 268400 virt 339a82 flags c0000040 0130:trace:module:map_image_into_view clearing 0x144b34400 - 0x144b35000 0130:trace:module:map_image_into_view mapping L"\??\C:\Program Files\GRAPHISOFT\ARCHICAD 22\ARCHICAD.exe" section .pdata at 0x144c06000 off 4b32800 size 1f0000 virt 1effb4 flags 40000040 0130:trace:module:map_image_into_view mapping L"\??\C:\Program Files\GRAPHISOFT\ARCHICAD 22\ARCHICAD.exe" section .gfids at 0x144df6000 off 4d22800 size 200 virt 28 flags 40000040 0130:trace:module:map_image_into_view clearing 0x144df6200 - 0x144df7000 0130:trace:module:map_image_into_view mapping L"\??\C:\Program Files\GRAPHISOFT\ARCHICAD 22\ARCHICAD.exe" section .tls at 0x144df7000 off 4d22a00 size 200 virt 9 flags c0000040 0130:trace:module:map_image_into_view clearing 0x144df7200 - 0x144df8000 0130:trace:module:map_image_into_view mapping L"\??\C:\Program Files\GRAPHISOFT\ARCHICAD 22\ARCHICAD.exe" section _RDATA at 0x144df8000 off 4d22c00 size 1800 virt 1750 flags 40000040 0130:trace:module:map_image_into_view clearing 0x144df9800 - 0x144dfa000 0130:trace:module:map_image_into_view mapping L"\??\C:\Program Files\GRAPHISOFT\ARCHICAD 22\ARCHICAD.exe" section .rsrc at 0x144dfa000 off 4d24400 size 4a60600 virt 4a605a0 flags 40000040 0130:trace:module:map_image_into_view clearing 0x14985a600 - 0x14985b000 0130:trace:module:map_image_into_view mapping L"\??\C:\Program Files\GRAPHISOFT\ARCHICAD 22\ARCHICAD.exe" section .reloc at 0x14985b000 off 9784a00 size 16d200 virt 16e000 flags c0000040 0130:trace:module:map_image_into_view clearing 0x1499c8200 - 0x1499c9000 0130:trace:module:map_image_into_view mapping PE file L"\??\C:\windows\system32\ntdll.dll" at 0x170000000-0x170089000 0130:trace:module:map_image_into_view mapping L"\??\C:\windows\system32\ntdll.dll" section .text at 0x170001000 off 1000 size 5f000 virt 5eee5 flags 60000020 0130:trace:module:map_image_into_view mapping L"\??\C:\windows\system32\ntdll.dll" section .rdata at 0x170060000 off 60000 size 1d000 virt 1c06c flags 40000040 0130:trace:module:map_image_into_view mapping L"\??\C:\windows\system32\ntdll.dll" section .data at 0x17007d000 off 7d000 size 1000 virt 40e4 flags c0000040 0130:trace:module:map_image_into_view mapping L"\??\C:\windows\system32\ntdll.dll" section .pdata at 0x170082000 off 7e000 size 3000 virt 2460 flags 40000040 0130:trace:module:map_image_into_view mapping L"\??\C:\windows\system32\ntdll.dll" section .rodata at 0x170085000 off 81000 size 2000 virt 1f28 flags c0000040 0130:trace:module:map_image_into_view mapping L"\??\C:\windows\system32\ntdll.dll" section .rsrc at 0x170087000 off 83000 size 1000 virt 3ac flags 40000040 0130:trace:module:map_image_into_view mapping L"\??\C:\windows\system32\ntdll.dll" section .reloc at 0x170088000 off 84000 size 1000 virt 164 flags 42000040 0130:trace:module:load_apiset_dll loaded L"\??\C:\windows\system32\apisetschema.dll" apiset at 0x141000 ... 0130:Call KERNEL32.GetModuleHandleA(0011f520 "api-ms-win-core-debug-l1-1-0.dll") ret=142c0a2ce ... 0130:Call ntdll.LdrGetDllHandleEx(00000001,00000000,00000000,0011f450,0011f448) ret=7b020bf1 0130:trace:module:LdrGetDllHandleEx flags 0x1, load_path 0000000000000000, dll_characteristics 0000000000000000, name 000000000011F450, base 000000000011F448. 0130:trace:module:find_dll_file found L"C:\windows\system32\kernelbase.dll" for L"api-ms-win-core-debug-l1-1-0.dll" 0130:trace:module:LdrGetDllHandleEx L"api-ms-win-core-debug-l1-1-0.dll" -> 000000007B000000 (load path (null)) 0130:Ret ntdll.LdrGetDllHandleEx() retval=00000000 ret=7b020bf1 0130:Ret KERNEL32.GetModuleHandleA() retval=7b000000 ret=142c0a2ce ... 0130:Call KERNEL32.GetModuleHandleA(0011f520 "api-ms-win-core-debug-l1-1-9.dll") ret=142c0a2ce ... 0130:Call ntdll.LdrGetDllHandleEx(00000001,00000000,00000000,0011f450,0011f448) ret=7b020bf1 0130:trace:module:LdrGetDllHandleEx flags 0x1, load_path 0000000000000000, dll_characteristics 0000000000000000, name 000000000011F450, base 000000000011F448. 0130:trace:module:find_dll_file found L"C:\windows\system32\kernelbase.dll" for L"api-ms-win-core-debug-l1-1-9.dll" 0130:trace:module:LdrGetDllHandleEx L"api-ms-win-core-debug-l1-1-9.dll" -> 000000007B000000 (load path (null)) 0130:Ret ntdll.LdrGetDllHandleEx() retval=00000000 ret=7b020bf1 0130:Ret KERNEL32.GetModuleHandleA() retval=7b000000 ret=142c0a2ce 0130:Call KERNEL32.GetLastError() ret=142ca9178 0130:Ret KERNEL32.GetLastError() retval=00000000 ret=142ca9178 ... 0130:Call KERNEL32.GetModuleHandleA(0011f520 "api-ms-win-core-debug-l1-2-0.dll") ret=142c0a2ce ... 0130:Call ntdll.LdrGetDllHandleEx(00000001,00000000,00000000,0011f450,0011f448) ret=7b020bf1 0130:trace:module:LdrGetDllHandleEx flags 0x1, load_path 0000000000000000, dll_characteristics 0000000000000000, name 000000000011F450, base 000000000011F448. 0130:trace:module:LdrGetDllHandleEx L"api-ms-win-core-debug-l1-2-0.dll" -> 0000000000000000 (load path (null)) 0130:Ret ntdll.LdrGetDllHandleEx() retval=c0000135 ret=7b020bf1 0130:Call ntdll.RtlNtStatusToDosError(c0000135) ret=7b020c02 0130:Ret ntdll.RtlNtStatusToDosError() retval=0000007e ret=7b020c02 0130:Ret KERNEL32.GetModuleHandleA() retval=00000000 ret=142c0a2ce 0130:Call KERNEL32.GetLastError() ret=142ca9178 0130:Ret KERNEL32.GetLastError() retval=0000007e ret=142ca9178 --- snip ---
$ wine --version wine-7.3
Regards