[Bug 39456] DirectX 9.0c End-User Runtime web installer bundled with many games crashes due to 'inseng.dll' insufficiencies

wine-bugs at winehq.org wine-bugs at winehq.org
Sat Apr 14 05:15:21 CDT 2018


https://bugs.winehq.org/show_bug.cgi?id=39456

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |focht at gmx.net
            Summary|DirectX 9.0c End-User       |DirectX 9.0c End-User
                   |Runtime Web Installer page  |Runtime web installer
                   |fault / crashes             |bundled with many games
                   |                            |crashes due to 'inseng.dll'
                   |                            |insufficiencies
           Keywords|                            |download, Installer
                URL|                            |https://www.microsoft.com/e
                   |                            |n-gb/download/confirmation.
                   |                            |aspx?id=35
    Staged patchset|https://github.com/wine-com |https://github.com/wine-sta
                   |pholio/wine-staging/tree/ma |ging/wine-staging/tree/mast
                   |ster/patches/inseng-Impleme |er/patches/inseng-Implement
                   |ntation                     |ation

--- Comment #6 from Anastasius Focht <focht at gmx.net> ---
Hello folks,

still present.

--- snip ---
$ WINEDEBUG=+seh,+relay,+inseng wine ./dxwsetup.exe /windowsupdate >>log.txt
2>&1
...
002e:Call ole32.CoCreateInstance(010015f8,00000000,00000005,01001608,003511b4)
ret=0100bcc0 
...
002e:Call inseng.DllGetClassObject(0032cef8,7e3e7408,0032cf08) ret=7e308138
002e:trace:inseng:DllGetClassObject (CLSID_InstallEngine
{00000001-0000-0000-c000-000000000046} 0x32cf08)
002e:trace:inseng:ClassFactory_QueryInterface (0x7d90967c)->(IID_IClassFactory
0x32cf08)
002e:Ret  inseng.DllGetClassObject() retval=00000000 ret=7e308138
002e:Call advapi32.RegCloseKey(00000078) ret=7e30b525
002e:Ret  advapi32.RegCloseKey() retval=00000000 ret=7e30b525
002e:trace:inseng:InstallEngineCF_CreateInstance ((nil)
{6e449689-c509-11cf-aafa-00aa00b6015c} 0x32cf0c)
002e:Call ntdll.RtlAllocateHeap(00110000,00000000,00000008) ret=7d8ff266
002e:Ret  ntdll.RtlAllocateHeap() retval=00158390 ret=7d8ff266
002e:trace:inseng:InstallEngine_QueryInterface (0x158390)->(IID_IInstallEngine2
0x32cf0c)
002e:trace:inseng:InstallEngine_AddRef (0x158390) ref=2
002e:trace:inseng:InstallEngine_Release (0x158390) ref=1
002e:Ret  ole32.CoCreateInstance() retval=00000000 ret=0100bcc0
002e:fixme:inseng:InstallEngine_RegisterInstallEngineCallback
(0x158390)->(0x351198)
...
002e:trace:inseng:InstallEngine_Release (0x158390) ref=0
...
002e:fixme:inseng:InstallEngine_UnregisterInstallEngineCallback (0x15de28)
...
002e:Call
KERNEL32.FormatMessageA(00001300,00000000,80004001,00000000,0032f1bc,00000000,00000000)
ret=01005b40
002e:Ret  KERNEL32.FormatMessageA() retval=00000000 ret=01005b40
002e:Call KERNEL32.GetLastError() ret=01005b6d
002e:Ret  KERNEL32.GetLastError() retval=0000013d ret=01005b6d 
...
002e:trace:inseng:InstallEngine_Release (0x15de28) ref=0
002e:Call ntdll.RtlFreeHeap(00110000,00000000,0015de28) ret=7d8ff28e
002e:Ret  ntdll.RtlFreeHeap() retval=00000001 ret=7d8ff28e
002e:trace:seh:raise_exception code=c0000005 flags=0 addr=0x2 ip=00000002
tid=002e
002e:trace:seh:raise_exception  info[0]=00000008
002e:trace:seh:raise_exception  info[1]=00000002
002e:trace:seh:raise_exception  eax=00158390 ebx=01002854 ecx=00197a60
edx=00110064 esi=00351198 edi=010019f8
002e:trace:seh:raise_exception  ebp=0032f568 esp=0032f550 cs=0023 ds=002b
es=002b fs=0063 gs=006b flags=00010206
002e:trace:seh:call_stack_handlers calling handler at 0x1010980 code=c0000005
flags=0
002e:Call KERNEL32.GetLastError() ret=010103d2
002e:Ret  KERNEL32.GetLastError() retval=000000b7 ret=010103d2
002e:trace:seh:call_stack_handlers handler at 0x1010980 returned 1
002e:trace:seh:call_stack_handlers calling handler at 0x7b48fa3c code=c0000005
flags=0
wine: Unhandled page fault on execute access to 0x00000002 at address 0x2
(thread 002e), starting debugger...
002e:trace:seh:start_debugger Starting debugger "winedbg --auto 45 120"
002e:trace:seh:call_stack_handlers handler at 0x7b48fa3c returned 1
Unhandled exception: page fault on execute access to 0x00000002 in 32-bit code
(0x00000002).
...
Backtrace:
=>0 0x00000002 (0x0032f568)
  1 0x0100b752 in dxwsetup (+0xb751) (0x0032f914)
  2 0x01008965 in dxwsetup (+0x8964) (0x0032fd88)
  3 0x0100dc6b in dxwsetup (+0xdc6a) (0x0032feb0)
  4 0x7b46d7f0 call_process_entry+0xb() in kernel32 (0x0032fec8)
  5 0x7b46d931 start_process+0x132(entry=<couldn't compute location>,
peb=<couldn't compute location>)
[/home/focht/projects/wine/wine.repo/src/dlls/kernel32/process.c:1099] in
kernel32 (0x0032ffd8)
  6 0x7b46d7fe start_process_wrapper+0x9() in kernel32 (0x0032ffec)
0x00000002: -- no code accessible --
Modules:
Module    Address            Debug info    Name (74 modules)
PE     1000000- 1085000    Export          dxwsetup
ELF    7b400000-7b7f3000    Dwarf           kernel32<elf>
  \-PE    7b420000-7b7f3000    \               kernel32
ELF    7bc00000-7bd0d000    Deferred        ntdll<elf>
  \-PE    7bc30000-7bd0d000    \               ntdll
ELF    7c000000-7c004000    Deferred        <wine-loader>
ELF    7d8ed000-7d90a000    Deferred        inseng<elf>
  \-PE    7d8f0000-7d90a000    \               inseng 
...
Threads:
process  tid      prio (all id:s are in hex)
...
0000002d (D) Z:\home\focht\Downloads\IXP000.TMP\dxwsetup.exe
    0000002e    0 <== 
--- snip ---

'DirectX.log':

--- snip ---
04/14/18 11:58:51: DXWSetup: ***** DXWSETUP *****
04/14/18 11:58:51: DXWSetup: WinMain()
04/14/18 11:58:51: DXWSetup: IsIA64(): not IA64.
04/14/18 11:58:51: DXWSetup: Target file:
'C:\windows\system32\directx\websetup\dsetup.dll' 
    Target file is Version 4.9.0.904
    Source file is Version 4.9.0.904
04/14/18 11:58:51: DXWSetup: Target file:
'C:\windows\system32\directx\websetup\dsetup32.dll' 
    Target file is Version 4.9.0.904
    Source file is Version 4.9.0.904
04/14/18 11:58:51: DXWSetup: GetDXVersion(): Unable to get RC string from
registry.
04/14/18 11:58:51: DXWSetup: DirectX Version: 4.09.00.0904.00
04/14/18 11:58:51: DXWSetup: Setup Version: 4.09.00.0904.00
04/14/18 11:58:51: DXWSetup: A newer version of DirectX have been installed
already.
04/14/18 11:58:51: DXWSetup: CDXWSetup::CDXWSetup()
04/14/18 11:58:51: DXWSetup: CDXWSetup::CDXWSetup():
RegisterInstallEngineCallback() failed, error = 0x80004001.
04/14/18 11:58:51: DXWSetup: DXSError(): FormatMessage() failed, system cannot
find message text for error.
04/14/18 11:58:51: DXWSetup: CDXWSetup::DownloadDXUpdate()
04/14/18 11:58:51: DXWSetup: CDXWSetup::DownloadDXUpdate():
RegisterInstallEngineCallback() failed, error = 0x80004001.
04/14/18 11:58:51: DXWSetup: DXSError(): FormatMessage() failed, system cannot
find message text for error.
04/14/18 11:58:51: DXWSetup: ProgressDlgProc(): CDXWSetup::DownloadDXUpdate()
failed.
04/14/18 11:58:51: DXWSetup: CDXWSetup::~CDXWSetup()
04/14/18 11:58:51: DXWSetup: CDXWSetup::~CDXWSetup():
UnregisterInstallEngineCallback() failed, error = 0x80004001.
04/14/18 11:58:51: DXWSetup: DXSError(): FormatMessage() failed, system cannot
find message text for error.
--- snip ---

'DXError.log':

--- snip ---
[04/14/18 11:58:51] module: DXWSetup(Mar 30 2011), file: dxwsetup.cpp, line:
189, function: CDXWSetup::~CDXWSetup

    Failed API:        UnregisterInstallEngineCallback()
    Error:        (0x80004001)
--- snip ---

The Wine-Staging patch
https://github.com/wine-staging/wine-staging/blob/master/patches/inseng-Implementation/0001-inseng-Implement-CIF-reader-and-download-functions.patch
makes the installer work (see 'DirectX.log' after running it).

$ du -sh dxwebsetup.exe 
288K    dxwebsetup.exe

$ sha1sum dxwebsetup.exe 
3c8243734cf43dd7bb2332ba05b58ccacfa4377c  dxwebsetup.exe

$ wine --version
wine-3.6

Regards

-- 
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.



More information about the wine-bugs mailing list