http://bugs.winehq.org/show_bug.cgi?id=36001
Bug ID: 36001 Summary: Dragon NaturallySpeaking 12.5 64-bit does not run with ntdll error Product: Wine Version: 1.7.16 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: ntdll Assignee: wine-bugs@winehq.org Reporter: susancragin@earthlink.net
Created attachment 48129 --> http://bugs.winehq.org/attachment.cgi?id=48129 winedebug ntdll warnings all for natspeak 12.5 run time
On Windows, Dragon NaturallySpeaking (versions 10.0 and subsequent) is a 32-bit program with 64-bit handles that make it run on a 64-bit system. The current version is 12.5. NatSpeak 12.5 installed well on Wine 1.4, and runs well on all versions of wine up to the present. However, NatSpeak installed on the current wine version (1.7.16) seems to install without error but then does not run. A check of winedebug warnings implicates only ntdll. It seems to be pointing the program in the wrong directions.
http://bugs.winehq.org/show_bug.cgi?id=36001
--- Comment #1 from Susan Cragin susancragin@earthlink.net --- Created attachment 48130 --> http://bugs.winehq.org/attachment.cgi?id=48130 winedebug relay
http://bugs.winehq.org/show_bug.cgi?id=36001
--- Comment #2 from Susan Cragin susancragin@earthlink.net --- Created attachment 48134 --> http://bugs.winehq.org/attachment.cgi?id=48134 simple runtime log with no arguments
These look like just the usual non-critical error messages to me...
https://bugs.winehq.org/show_bug.cgi?id=36001
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |Installer, regression, | |win64
--- Comment #3 from Austin English austinenglish@gmail.com --- Could you run a regression test to see what commit breaks the installer?
https://bugs.winehq.org/show_bug.cgi?id=36001
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW CC| |focht@gmx.net Component|ntdll |-unknown Summary|Dragon NaturallySpeaking |Dragon NaturallySpeaking |12.5 64-bit does not run |12.5: 'DragonSvc' service |with ntdll error |installation fails | |(services running in | |context of the | |'LocalSystem' account must | |use | |SECURITY_LOCAL_SYSTEM_RID | |user sid) Ever confirmed|0 |1
--- Comment #4 from Anastasius Focht focht@gmx.net --- Hello folks,
confirming.
From the attached log (BTW please don't use text type for .tar.bz2
attachments):
--- snip --- ... 0009:Call advapi32.RegOpenKeyExW(000001b8,01374330 L"{dd100002-6205-11cf-ae61-0000e8a28647}",00000000,00000001,0032da50) ret=220ecaea 0009:Ret advapi32.RegOpenKeyExW() retval=00000002 ret=220ecaea 0009:Call advapi32.RegCloseKey(000001b8) ret=220ecaf8 0009:Ret advapi32.RegCloseKey() retval=00000000 ret=220ecaf8 ... 0009:Call KERNEL32.WideCharToMultiByte(0000fde9,00000000,0032cbf8 L"07:35:30 Exception thrown (E:\work\1200relmob\shared\fixguid.cpp, 918).\r\n07:35:30 \r\n`\0011\54e2\7bca\d1c82\7e32\f739\d1f02\54e2\7bca\0001",00000054,0032bea0,00000d55,00000000,00000000) ret=78ae01fc 0009:Ret KERNEL32.WideCharToMultiByte() retval=00000054 ret=78ae01fc ... 0009:Call KERNEL32.RaiseException(e06d7363,00000001,00000003,0032dc34) ret=78ac872d ... 0009:Call KERNEL32.WideCharToMultiByte(0000fde9,00000000,0032cbf8 L"07:35:30 Exception thrown (E:\work\1200relmob\shared\fixguid.cpp, 918).\r\n07:35:30 \r\n`\0011\54e2\7bca\d1c82\7e32\f739\d1f02\54e2\7bca\0001",00000054,0032bea0,00000d55,00000000,00000000) ret=78ae01fc ... 0009:Call KERNEL32.WideCharToMultiByte(0000fde9,00000000,0032a288 L"07:35:30 WARNING: An error dialog is suppressed: A serious error occurred, which prevents NaturallySpeaking from accessing the registry.\r\n",0000008a,00329530,00000d55,00000000,00000000) ret=78ae01fc --- snip ---
COM server registration info is missing from registry. Looks like some things went wrong during installation, leaving a broken app.
Additionally:
--- snip --- 0009:Call KERNEL32.WideCharToMultiByte(0000fde9,00000000,0032cf90 L"07:35:26 OS: Windows 8 build 9200 ( ) 64-bit\r\n\000f",0000002e,0032c238,00000d55,00000000,00000000) ret=78ae01fc --- snip ---
Is there a reason you have set WINEPREFIX 'WinVer' set to 'Windows 8'? Changing the default reported Windows version to latest doesn't automatically make Wine better. It affects how the app works and often does more harm than good (tries to call new/unimplemented APIs).
Unless there is no strict requirement from the installer itself, please don't change the default version. If the installer requires a higher version, select the lowest required one.
Additionally, using 64-bit WINEPREFIX/WoW64 could result in (silently) broken components, especially .NET Frameworks and stuff that relies on proper 32-bit/64-bit MSI server separation. Use at own risk.
--
Anyway, I found a torrent with DNS 12.5 and could reproduce some installer problem with a clean 32-bit WINEPREFIX and default 'WinVer' set to 'Windows XP'.
The installation part where a failure is reported, extracted from 'dgnsetup.log' in user 'temp' folder:
--- snip --- ... 1: Invoking script function ActivateDragonService 2: Script Info: 21:41:11: MSI property retrieved successfully: 'COMMONFILES_NUANCE=C:\Program Files\Common Files\Nuance'. Script Info: 21:41:11: Starting child application: C:\Program Files\Common Files\Nuance\DgnSvc.exe /install ... 1: Invoking script function SetPeriodicTasks 2: Script Info: 21:41:11: MSI property retrieved successfully: 'TARGETDIR=C:\Program Files\Nuance\NaturallySpeaking12'. Script Info: 21:41:11: MSI property retrieved successfully: 'PERIODIC_TASK=aco|lmo|dc'. Script ERROR: 21:41:11: Unable to configure periodic task(s) as specified by the following parameter. You will be able to configure the tasks manually after the installation using Administrative Settings dialog. Error: -2147221164 'aco|lmo|dc' 1: CallScriptFunctionFromMsiCA() ends 2: --- snip ---
The service install can be manually executed afterwards for analysis.
Relevant part of trace log:
--- snip --- $ pwd /home/focht/.wine/drive_c/Program Files/Common Files/Nuance
$ WINEDEBUG=+tid,+seh,+relay,+ole,+variant,+advapi,+server wine ./dgnsvc.exe /install >>log.txt 2>&1 ... 0009:Ret advapi32.OpenSCManagerW() retval=00135ff8 ret=0040642c 0009:Call advapi32.OpenServiceW(00135ff8,00436f7c L"DragonSvc",00000014) ret=0040645d ... 0009:Ret advapi32.OpenServiceW() retval=00139f10 ret=0040645d ... 0009:Call advapi32.StartServiceW(00139f10,00000000,00000000) ret=00406499 ... 0018:Call KERNEL32.CreateProcessW(00000000,0011b058 L"C:\Program Files\Common Files\Nuance\dgnsvc.exe",00000000,00000000,00000000,00000400,00540000,00000000,0084e4c8,0084e50c) ret=7edb7d84 ... 0032:Call advapi32.OpenProcessToken(ffffffff,00000008,0033fd94) ret=0040d729 0032:trace:ntdll:NtOpenProcessTokenEx (0xffffffff,0x00000008,0x00000000,0x33fd94) 0032: open_token( handle=ffffffff, access=00000008, attributes=00000000, flags=00000000 ) 0032: open_token() = 0 { token=0048 } 0032:Ret advapi32.OpenProcessToken() retval=00000001 ret=0040d729 0032:Call advapi32.AllocateAndInitializeSid(0033fda0,00000001,00000012,00000000,00000000,00000000,00000000,00000000,00000000,00000000,0033fd9c) ret=0040d75b 0032:trace:ntdll:RtlAllocateAndInitializeSid (0x33fda0, 0x0001,0x00000012,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x33fd9c) 0032:Ret advapi32.AllocateAndInitializeSid() retval=00000001 ret=0040d75b 0032:Call advapi32.GetTokenInformation(00000048,00000001,00000000,00000000,0033fd98) ret=0040d77a 0032:trace:advapi:GetTokenInformation (0x48, TokenUser, (nil), 0, 0x33fd98): 0032:trace:ntdll:NtQueryInformationToken (0x48,1,(nil),0,0x33fd98) 0032: get_token_sid( handle=0048, which_sid=00000001 ) 0032: get_token_sid() = BUFFER_TOO_SMALL { sid_len=28<invalid sid> } 0032:Ret advapi32.GetTokenInformation() retval=00000000 ret=0040d77a 0032:Call KERNEL32.GetLastError() ret=0040d784 0032:Ret KERNEL32.GetLastError() retval=0000007a ret=0040d784 0032:Call ntdll.RtlAllocateHeap(00460000,00000000,00000024) ret=00419639 0032:Ret ntdll.RtlAllocateHeap() retval=00461ee0 ret=00419639 0032:Call advapi32.GetTokenInformation(00000048,00000001,00461ee0,00000024,0033fd98) ret=0040d7aa 0032:trace:advapi:GetTokenInformation (0x48, TokenUser, 0x461ee0, 36, 0x33fd98): 0032:trace:ntdll:NtQueryInformationToken (0x48,1,0x461ee0,36,0x33fd98) 0032: get_token_sid( handle=0048, which_sid=00000001 ) 0032: get_token_sid() = 0 { sid_len=28, sid={S-1-5-21-0-0-0-1000} } 0032:Ret advapi32.GetTokenInformation() retval=00000001 ret=0040d7aa 0032:Call advapi32.EqualSid(001383c8,00461ee8) ret=0040d7bc 0032:Ret advapi32.EqualSid() retval=00000000 ret=0040d7bc 0032:Call ntdll.RtlFreeHeap(00460000,00000000,00461ee0) ret=0041969e 0032:Ret ntdll.RtlFreeHeap() retval=00000001 ret=0041969e 0032:Call advapi32.FreeSid(001383c8) ret=0040d7d8 0032:trace:ntdll:RtlFreeSid (0x1383c8) 0032:Ret advapi32.FreeSid() retval=00000000 ret=0040d7d8 0032:Call KERNEL32.CloseHandle(00000048) ret=0040d7e4 0032: close_handle( handle=0048 ) 0032: close_handle() = 0 ... 0009:Ret advapi32.StartServiceW() retval=00000000 ret=00406499 ... 0009:Call user32.wvsprintfW(004491d8,00436f28 L"Error: Failed to start "%s" service - %s.",0033f700) ret=0040ded3 Error: Failed to start "DragonSvc" service - <unknown>. --- snip ---
The process checks if it runs in the context of the 'LocalSystem' account (inherits the security context of the SCM) and only then tries to act as service by calling 'StartServiceCtrlDispatcher'.
The user SID is created from the SECURITY_LOCAL_SYSTEM_RID value (= not associated with any logged-on user account). Unfortunately the user SID for this service process is .. the (logged on) user SID.
$ wine --version wine-1.7.16-178-g7e874ae
Regards
http://bugs.winehq.org/show_bug.cgi?id=36001
--- Comment #5 from Susan Cragin susancragin@earthlink.net --- Windows Vista is the earliest version that can be used in a 64-bit system. See: http://supportcontent.nuance.com/dragon/12/doc/DNS_V12_5_ReleaseNotes.pdf page 11. I will use that in future. In 32-bit mode it still runs in XP.
As re. selecting 64-bit over 32-bit, NatSpeak is resource intensive. And I am expecting the next version (Dragon NaturallySpeaking 13.0) to have an entirely 64-bit version.
http://bugs.winehq.org/show_bug.cgi?id=36001
Susan Cragin susancragin@earthlink.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #48134|0 |1 is obsolete| |
--- Comment #6 from Susan Cragin susancragin@earthlink.net --- Created attachment 48209 --> http://bugs.winehq.org/attachment.cgi?id=48209 20140422 runtime log no arguments
this is a new simple runtime log using wine-1.7.17. This time the program generated a dump, so will include that also.
http://bugs.winehq.org/show_bug.cgi?id=36001
--- Comment #7 from Susan Cragin susancragin@earthlink.net --- Created attachment 48210 --> http://bugs.winehq.org/attachment.cgi?id=48210 20140422 coredump log
this dump log was generated by the program.
http://bugs.winehq.org/show_bug.cgi?id=36001
--- Comment #8 from Anastasius Focht focht@gmx.net --- Hello Susan,
that's a separate issue, I created bug 36050 for that. You could try 'winetricks vcrun2010' and see if it works around.
Regards
https://bugs.winehq.org/show_bug.cgi?id=36001
Ken Sharp imwellcushtymelike@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords|regression |
https://bugs.winehq.org/show_bug.cgi?id=36001
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Dragon NaturallySpeaking |Dragon NaturallySpeaking |12.5: 'DragonSvc' service |12.x: 'DragonSvc' service |installation fails |installation fails |(services running in |(services running in |context of the |context of the |'LocalSystem' account must |'LocalSystem' account must |use |use |SECURITY_LOCAL_SYSTEM_RID |SECURITY_LOCAL_SYSTEM_RID |user sid) |user sid)
--- Comment #9 from Anastasius Focht focht@gmx.net --- Hello folks,
revisiting, still present.
Also applies to Dragon NaturallySpeaking 12.0
--- snip --- $ pwd /home/focht/.wine/drive_c/Program Files/Common Files/Nuance
$ WINEDEBUG=+seh,+relay,+advapi,+server wine ./dgnsvc.exe /install >>log.txt 2>&1 --- snip ---
$ wine --version wine-6.0-rc3-34-g9d7a710fc0d
Regards