[Bug 44619] New: Multiple 64-bit applications need various Win7+ user-mode scheduling (UMS ) API stubs (x64dbg, ACDSee Pro 9.0)
wine-bugs at winehq.org
wine-bugs at winehq.org
Mon Feb 26 16:03:22 CST 2018
https://bugs.winehq.org/show_bug.cgi?id=44619
Bug ID: 44619
Summary: Multiple 64-bit applications need various Win7+
user-mode scheduling (UMS) API stubs (x64dbg, ACDSee
Pro 9.0)
Product: Wine
Version: 3.2
Hardware: x86-64
OS: Linux
Status: NEW
Severity: normal
Priority: P2
Component: kernel32
Assignee: wine-bugs at winehq.org
Reporter: focht at gmx.net
Distribution: ---
Hello folks,
continuation of bug 43351
To work around several 'msvcr120'/'msvcp120' insufficiencies (covered by other
bug reports), both must be still set to 'native' (app provides the runtime
itself in install directory). The UMS API is actually pulled in by native
'msvcr120' - the 'purist' mode is unusable.
A Wine-Staging patchset exists:
https://github.com/wine-staging/wine-staging/blob/master/patches/kernel32-UmsStubs/0001-kernel32-Add-a-bunch-of-kernel32-stubs.patch
Dmitry says:
--- quote ---
64-bit ACDSee Pro 9.0 on start up queries them with GetProcAddress() and
fails to start if any of these APIs is missing.
--- quote ---
So there is another app requiring these API.
--- snip ---
$ WINEDEBUG=+seh,+relay wine ./x64dbg.exe >>log.txt 2>&1
...
002b:Call KERNEL32.GetModuleHandleW(003b1020 L"kernel32.dll",) ret=00310ab5
002b:Ret KERNEL32.GetModuleHandleW() retval=7b460000 ret=00310ab5
002b:Call KERNEL32.GetProcAddress(7b460000,003b1dd8 "CreateRemoteThreadEx",)
ret=00310ac5
002b:Ret KERNEL32.GetProcAddress() retval=7b46c988 ret=00310ac5
002b:Call KERNEL32.GetModuleHandleW(003b1020 L"kernel32.dll",) ret=00310aeb
002b:Ret KERNEL32.GetModuleHandleW() retval=7b460000 ret=00310aeb
002b:Call KERNEL32.GetProcAddress(7b460000,003b1df0 "CreateUmsCompletionList",)
ret=00310afb
002b:Ret KERNEL32.GetProcAddress() retval=00000000 ret=00310afb
002b:Call KERNEL32.GetLastError() ret=00310e8e
002b:Ret KERNEL32.GetLastError() retval=0000007f ret=00310e8e
002b:Call ntdll.RtlPcToFileHeader(003bd4b8,0023e370,) ret=0034ee94
002b:Ret ntdll.RtlPcToFileHeader() retval=002f0000 ret=0034ee94
002b:Call KERNEL32.RaiseException(e06d7363,00000001,00000004,0023e340,)
ret=0034eed3
002b:trace:seh:NtRaiseException code=e06d7363 flags=1 addr=0x7b490ac8
ip=7b490ac8 tid=002b
002b:trace:seh:NtRaiseException info[0]=0000000019930520
002b:trace:seh:NtRaiseException info[1]=000000000023e4b0
002b:trace:seh:NtRaiseException info[2]=00000000003bd4b8
002b:trace:seh:NtRaiseException info[3]=00000000002f0000
002b:trace:seh:NtRaiseException rax=000000007b473408 rbx=00000000003bd4b8
rcx=000000000023e130 rdx=0000000000000020
002b:trace:seh:NtRaiseException rsi=000000000023e340 rdi=000000000023e150
rbp=000000000023e280 rsp=000000000023e110
002b:trace:seh:NtRaiseException r8=0000000000000004 r9=000000000023e340
r10=0000000000000000 r11=0000000000000000
002b:trace:seh:NtRaiseException r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
...
--- snip ---
https://sourceforge.net/projects/x64dbg/files/snapshots/snapshot_2017-07-03_12-03.zip/download
Imports from 'msvcr120':
* CreateUmsCompletionList
* CreateUmsThreadContext
* DeleteProcThreadAttributeList
* DeleteUmsCompletionList
* DeleteUmsThreadContext
* DequeueUmsCompletionListItems
* EnterUmsSchedulingMode
* ExecuteUmsThread
* GetCurrentUmsThread
* GetNextUmsListItem
* GetUmsCompletionListEvent
* InitializeProcThreadAttributeList
* QueryUmsThreadInformation
* SetUmsThreadInformation
* UmsThreadYield
* UpdateProcThreadAttribute
I didn't check how many of these are really needed as pure stubs, semi-stubs,
functional.
$ sha1sum snapshot_2018-01-28_12-18.zip
8ff850f135ff1f3e185c1fd3e1fb2c4de661bd06 snapshot_2018-01-28_12-18.zip
$ du -sh snapshot_2018-01-28_12-18.zip
33M snapshot_2018-01-28_12-18.zip
$ wine --version
wine-3.2-206-g9ae8b8c00f
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