http://bugs.winehq.org/show_bug.cgi?id=58942 Wolfgang Hartl <wolfo.dev@wolke7.net> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |wolfo.dev@wolke7.net --- Comment #12 from Wolfgang Hartl <wolfo.dev@wolke7.net> --- To understand why the installer was failing, I instrumented the advpack lib with addition debug messages. The installer stopped the installation of the main dxmedia.inf in the section [RegisterOCX] for ir50_32.dll. $ rm -rf ~/.wine-dxm $ env WINEPREFIX=/home/wolfgang/.wine-dxm ./wineboot -u $ env WINEPREFIX=/home/wolfgang/.wine-dxm WINEDEBUG=+advpack ./wine d:\DXMWRAP.EXE 2>&1 | tee ~/local/log/dxmwrap.install01.log ... 0144:trace:advpack:register_ocxs_callback LoadLibraryExW L"C:\\windows\\system32\\ir50_32.dll" 0144:err:advpack:do_ocx_reg no DllRegisterServer in L"C:\\windows\\system32\\ir50_32.dll" 0144:err:advpack:register_ocxs_callback do_ocx_reg failed for L"C:\\windows\\system32\\ir50_32.dll" err 0 $ Workaround: In the above logs can be seen that for the WINE-loaded built-in ir50_32.dll the functions DllRegisterServer() and DllUnRegisterServer() are not implmented/exported whereas in the native DLL they are. In the following workaround this failure can be avoided by preferring the native version when starting the installer. After that the full installion is executed, not only dxmedia.inf, but also all the other packages. $ rm -rf ~/.wine-dxm $ env WINEPREFIX=/home/wolfgang/.wine-dxm ./wineboot -u $ env WINEPREFIX=/home/wolfgang/.wine-dxm WINEDEBUG=+advpack WINEDLLOVERRIDES="ir50_32.dll=n,b" ./wine d:\DXMWRAP.EXE 2>&1 | tee ~/local/log/dxmwrap.install02.log ... 0160:trace:advpack:register_ocxs_callback LoadLibraryExW L"C:\\windows\\system32\\ivfsrc.ax" 0160:trace:advpack:register_ocxs_callback LoadLibraryExW L"C:\\windows\\system32\\danim.dll" 0140:trace:advpack:LaunchINFSectionExW LaunchINFSectionExW.ExecuteCabW.HR=0 $ Depite the improvement, the installer still exits with return code 43, still indicating that something was wrong. Unfortunately, regardless of what I tried, I was not able to find the reason(s) for this. I assume, that the installer internally captures issues during the install and keeps until the end. Solution for the early fail: The missing functions DllRegisterServer() and DllUnRegisterServer() in ir50_32.dll can be fixed. Enhance ir50_32.spec: @ stdcall -private DriverProc(long long long long long) IV50_DriverProc @ stdcall -private DllRegisterServer() @ stdcall -private DllUnregisterServer() With the patched version the installer call works without the dll-override (wine 11.9 patched): $ rm -rf ~/.wine-dxm $ env WINEPREFIX=/home/wolfgang/.wine-dxm ./wineboot -u $ env WINEPREFIX=/home/wolfgang/.wine-dxm WINEDEBUG=+advpack ./wine d:\DXMWRAP.EXE 2>&1 | tee ~/local/log/dxmwrap.install03.log The installer again reaches the end, as before with the dll-override. See the full details in the three attached logs. The additional ERR() debug message added to the do_ocx_reg() function in advpack.c might be useful for future debugging too. I can provide these patch(es) as MR. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.