https://bugs.winehq.org/show_bug.cgi?id=45796
Bug ID: 45796 Summary: Nvidia GeForce Now installer aborts due to missing 'advapi32.RegQueryReflectionKey' export Product: Wine Version: 3.15 Hardware: x86-64 OS: Linux Status: NEW Severity: normal Priority: P2 Component: advapi32 Assignee: wine-bugs@winehq.org Reporter: focht@gmx.net Distribution: ---
Hello folks,
as it says.
Prerequisites:
64-bit WINEPREFIX - Although it's the default I document it here to avoid people complaining/reporting dupes. The 32-bit installer will abort with some generic error when being run in 32-bit WINEPREFIX.
Unfortunately only app log/debugging reveals the reason.
--- snip --- ... 7.775 | INFO: [NVI2.Installation] 826@CInstallationCheckingBase::CheckConstraints : Processing global constraints. 7.777 | WARNING: [NVI2.NVPlatformsConstraint] 104@CNVPlatformsConstraint::InvokeCheck : Package platform constraint fail - Architecture 0. 7.778 | DEBUG: [NVI2.CNVRejectTestPackages] 328@CNVRejectTestPackages::InvokeTest : Packages found. 7.779 | DEBUG: [NVI2.NVRejectTestConstraint] 209@CNVRejectTestConstraint::InvokeCheck : No activity for "PACKAGES". 7.780 | DEBUG: [NVI2.CNVRejectTestRequired] 370@CNVRejectTestRequired::InvokeTest : All required packages present. 7.780 | DEBUG: [NVI2.NVRejectTestConstraint] 209@CNVRejectTestConstraint::InvokeCheck : No activity for "REQUIRED". 7.784 | DEBUG: [NVI2.CNVRejectTestFiles] 283@CNVRejectTestFiles::InvokeTest : All package files found. 7.785 | DEBUG: [NVI2.NVRejectTestConstraint] 209@CNVRejectTestConstraint::InvokeCheck : No activity for "FILES". 7.786 | DEBUG: [NVI2.CNVRejectTestInstall] 43@CNVRejectTestInstall::InvokeTest : No other install instance not found. 7.786 | DEBUG: [NVI2.NVRejectTestConstraint] 209@CNVRejectTestConstraint::InvokeCheck : No activity for "INSTALL". 7.787 | DEBUG: [NVI2.CNVRejectTestMSI] 232@CNVRejectTestMSI::InvokeTest : MSI mutex not locked. 7.788 | DEBUG: [NVI2.NVRejectTestConstraint] 209@CNVRejectTestConstraint::InvokeCheck : No activity for "MSI". 7.789 | INFO: [NVI2.CNVRejectTestPnP] 191@CNVRejectTestPnP::InvokeTest : PNP install inactive. 7.790 | DEBUG: [NVI2.NVRejectTestConstraint] 209@CNVRejectTestConstraint::InvokeCheck : No activity for "PNP". 7.791 | DEBUG: [NVI2.CNVRejectTestReboot] 85@CNVRejectTestReboot::InvokeTest : Previous reboot not detected. 7.791 | DEBUG: [NVI2.NVRejectTestConstraint] 209@CNVRejectTestConstraint::InvokeCheck : No activity for "REBOOT". 7.792 | INFO: [NVI2.Installation] 907@CInstallationCheckingBase::CheckConstraints : Global constraints processed. 7.793 | INFO: [NVI2.Installation] 909@CInstallationCheckingBase::CheckConstraints : Processing subpackage constraints. 7.794 | DEBUG: [NVI2.CNVRejectTestSafeMode] 126@CNVRejectTestSafeMode::InvokeTest : Not running in Safe Mode. 7.795 | DEBUG: [NVI2.NVRejectTestConstraint] 209@CNVRejectTestConstraint::InvokeCheck : No activity for "SAFEMODE". 7.796 | DEBUG: [NVI2.Installation] 1066@CInstallationCheckingBase::CheckConstraints : Constraint passed - "CheckNotSafeMode". 7.797 | INFO: [NVI2.NVOsConstraint] 83@CNVOsConstraint::PerformOperatingSystemCheck : Minimum OS version check pass - Version: 6.1.7601 >= 6.1. 7.797 | INFO: [NVI2.NVOsConstraint] 93@CNVOsConstraint::PerformOperatingSystemCheck : Maximum OS version check pass - Version: 6.1.7601 <= . 7.798 | INFO: [NVI2.NVOsConstraint] 43@CNVOsConstraint::PerformServicePackCheck : Minimum service pack version check pass - Version: 1.0 >= . 7.799 | INFO: [NVI2.NVOsConstraint] 58@CNVOsConstraint::PerformServicePackCheck : Maximum service pack version check pass - Version: 1.0 <= . 7.800 | DEBUG: [NVI2.Installation] 1066@CInstallationCheckingBase::CheckConstraints : Constraint passed - "OperatingSystemSupportCheck". 7.801 | DEBUG: [NVI2.Installation] 1066@CInstallationCheckingBase::CheckConstraints : Constraint passed - "CheckIfNotAnUpgrade". 7.802 | INFO: [NVI2.Installation] 1149@CInstallationCheckingBase::CheckConstraints : Subpackage constraints processed. 7.802 | ERROR: [NVI2.Installation] 1190@CInstallationCheckingBase::CheckConstraints : Constraints blocked install. 7.804 | INFO: [NVI2.Installation] 763@CInstallationCheckingBase::PerformExtensionsCallbackAction : Calling "C:\users\focht\Local Settings\Application Data\NVIDIA Corporation\Installer2\CoreTemp.{E78ADC95-2797-45F6-81D8-5B8C007FF162}\NVI2UI.DLL" to perform "after constraints check" work. 7.805 | DEBUG: [NVI2.NVInstaller] 2541@CNVInstaller::InternalClaimInUse : Claimed global install event. 7.993 | INFO: [NVI2UI.TimerCtrlClass] 96@CTimerCtrlClass::OnTimeout : Timeout fired. 7.995 | ERROR: [NVI2.InstallThread] 54@CInstallThread::ThreadProc : Install failed - Exception {0xe4000004; File: InstallationStepper.cpp; Line: 382} - going to fail state. 7.997 | INFO: [NVI2.NVInstaller] 3969@CNVInstaller::InternalProcessFinalStatus : Calling all extensions to process final status -469762044. 7.999 | INFO: [NVI2.NVInstaller] 3986@CNVInstaller::InternalProcessFinalStatus : Calling "C:\users\focht\Local Settings\Application Data\NVIDIA Corporation\Instal ... --- snip ---
Relevant 'setup.cfg' section for the constraints:
--- snip --- <constraints> <platforms list="AMD64" level="critical" text="${{ErrorUnsupportedPlatform}}"/> <reject tests="PACKAGES" level="critical" text="${{ErrorNoPackagesToInstall}}"/> <reject tests="REQUIRED" level="critical" text="${{ErrorMissingRequiredPackages}}"/> <reject tests="FILES" level="critical" text="${{ErrorMissingPackageFiles}}"/> <reject tests="INSTALL, MSI" level="critical" text="${{ErrorInstallerAlreadyRunning}}"/> <reject tests="PNP" level="wait" text="${{WaitPnpAlreadyRunning}}"/> <reject tests="REBOOT" level="critical" text="${{ErrorInstallerNeedReboot}}"/> </constraints> --- snip ---
'winetricks -q msxml3' -> workaround for bug 45795
The sub-installer can be run directly after executing 'GeForceNOW-release.exe'
--- snip --- $ pwd
/home/focht/.wine/drive_c/GeForceNOWInstallerTemp
$ file *
EULA.txt: ASCII text, with very long lines, with CRLF line terminators GeForceNOW: directory license.txt: Non-ISO extended-ASCII text, with very long lines, with CRLF line terminators NVI2: directory setup.cfg: XML 1.0 document, ASCII text, with CRLF line terminators setup.exe: PE32 executable (GUI) Intel 80386, for MS Windows
$ WINEDEBUG=+seh,+relay,+msi wine ./setup.exe >>log.txt 2>&1 ... 002b:Call KERNEL32.CreateProcessW(01ad1610 L"Z:\home\focht\Downloads\GeForceNOWInstallerTemp\GeForceNOW\GeforceNow_Installer.exe",01acff10 L"Z:\home\focht\Downloads\GeForceNOWInstallerTemp\GeForceNOW\GeforceNow_Installer.exe -uacTasks",00000000,00000000,00000000,0a000400,00000000,01ad13f0 L"Z:\home\focht\Downloads\GeForceNOWInstallerTemp\GeForceNOW",0246f1fc,0246f25c) ret=102705d2 ... 0033:Call KERNEL32.__wine_kernel_init() ret=7bc6d566 002b:Ret KERNEL32.CreateProcessW() retval=00000001 ret=102705d2 ... 0033:Call KERNEL32.CreateProcessW(00000000,0033e91c L""Z:\home\focht\Downloads\GeForceNOWInstallerTemp\GeForceNOW\GeforceNow_Installer.exe" -performUACTasks",00000000,00000000,00000000,00000410,00000000,00000000,0033e3f0,0033e3e0) ret=7e077bc1 ... 0035:Call KERNEL32.__wine_kernel_init() ret=7bc6d566 0033:Ret KERNEL32.CreateProcessW() retval=00000001 ret=7e077bc1 ... 002b:Call KERNEL32.CreateProcessW(01ad8848 L"C:\windows\system32\RunDll32.EXE",01ad8c38 L"C:\windows\system32\RunDll32.EXE "C:\users\focht\Local Settings\Application Data\NVIDIA Corporation\Installer2\CoreTemp.{8C5ADD65-5DB9-4E5A-95C4-9AE052773273}\NVPrxy64.DLL",Proxy {5E566A02-5317-4A75-9B1F-FFE2DCDA58FC} true",00000000,00000000,00000000,0a000400,00000000,01ad86f8 L"C:\users\focht\Local Settings\Application Data\NVIDIA Corporation\Installer2\CoreTemp.{8C5ADD65-5DB9-4E5A-95C4-9AE052773273}",0246ebd4,0246ec34) ret=102705d2 ... 0039:Call KERNEL32.__wine_kernel_init() ret=7bcdcda7 002b:Ret KERNEL32.CreateProcessW() retval=00000001 ret=102705d2 ... 002b:Call KERNEL32.IsWow64Process(ffffffff,0246f350) ret=102820ef 002b:Ret KERNEL32.IsWow64Process() retval=00000001 ret=102820ef 002b:Call advapi32.RegOpenKeyExW(80000001,01add150 L"Software\NVIDIA Corporation\Installer2\Pending",00000008,00020106,0246f378) ret=1026bc2e 002b:Ret advapi32.RegOpenKeyExW() retval=00000000 ret=1026bc2e ... 002b:Call KERNEL32.LoadLibraryW(00165630 L"C:\windows\system32\ADVAPI32.DLL") ret=1027214c 002b:Ret KERNEL32.LoadLibraryW() retval=7e660000 ret=1027214c ... 002b:Call KERNEL32.GetProcAddress(7e660000,103a0ad0 "RegDeleteKeyExW") ret=10271fd8 002b:Ret KERNEL32.GetProcAddress() retval=7e66c040 ret=10271fd8 002b:Call KERNEL32.GetProcAddress(7e660000,1037a7a4 "RegQueryReflectionKey") ret=10271fd8 002b:Ret KERNEL32.GetProcAddress() retval=00000000 ret=10271fd8 002b:Call KERNEL32.GetProcAddress(7e660000,1037a7bc "RegDeleteTreeW") ret=10271fd8 002b:Ret KERNEL32.GetProcAddress() retval=7e66c0b8 ret=10271fd8 002b:Call KERNEL32.IsWow64Process(ffffffff,0246f33c) ret=102820ef 002b:Ret KERNEL32.IsWow64Process() retval=00000001 ret=102820ef 002b:Call ntdll.RtlAllocateHeap(00110000,00000000,00000020) ret=100292e1 002b:Ret ntdll.RtlAllocateHeap() retval=01add3f8 ret=100292e1 002b:Call KERNEL32.RaiseException(e06d7363,00000001,00000003,0246f2fc) ret=102c71d8 002b:trace:seh:raise_exception code=e06d7363 flags=1 addr=0x7b4473c3 ip=7b4473c3 tid=002b 002b:trace:seh:raise_exception info[0]=19930520 002b:trace:seh:raise_exception info[1]=0246f318 002b:trace:seh:raise_exception info[2]=1048dc68 002b:trace:seh:raise_exception eax=7b435899 ebx=0246f318 ecx=00000000 edx=0246f2dc esi=0246f2dc edi=0246f2a0 002b:trace:seh:raise_exception ebp=0246f278 esp=0246f214 cs=2460023 ds=246002b es=f7c2002b fs=f7c20063 gs=f7c2006b flags=00000216 002b:trace:seh:call_stack_handlers calling handler at 0x10367ea8 code=e06d7363 flags=1 002b:Call KERNEL32.GetLastError() ret=102ca09e ... 002b:Call KERNEL32.RaiseException(e06d7363,00000001,00000003,0246eba0) ret=102c71d8 002b:trace:seh:raise_exception code=e06d7363 flags=1 addr=0x7b4473c3 ip=7b4473c3 tid=002b 002b:trace:seh:raise_exception info[0]=19930520 002b:trace:seh:raise_exception info[1]=00000000 002b:trace:seh:raise_exception info[2]=00000000 002b:trace:seh:raise_exception eax=7b435899 ebx=00000000 ecx=00000000 edx=0246eb80 esi=0246eb80 edi=0246eb40 002b:trace:seh:raise_exception ebp=0246eb18 esp=0246eab4 cs=2460023 ds=246002b es=f7c2002b fs=f7c20063 gs=f7c2006b flags=00000216 002b:trace:seh:call_stack_handlers calling handler at 0x102c5f51 code=e06d7363 flags=1 ... 002b:Call KERNEL32.FormatMessageW(00001300,00000000,e0e00000,00000000,0246e034,00000000,00000000) ret=10277c57 002b:Ret KERNEL32.FormatMessageW() retval=00000000 ret=10277c57 ... 002b:Call KERNEL32.OutputDebugStringW(01acfaf0 L" 12.965 | ERROR: [NVI2.InstallThread] 54@CInstallThread::ThreadProc : Install failed - Exception {0xe0e00000; File: Registry.cpp; Line: 152; While loading C:\windows\system32\ADVAPI32.DLL} - going to fail state. \n") ret=1003cc17 --- snip ---
App log:
--- snip --- ... 9.051 | INFO: [NVI2.NVInstaller] 1904@CNVInstaller::InternalPerformInstall : Entering Checkpoint: Processing Packages. 9.052 | DEBUG: [NVI2UI.MainFrame] 2651@CMainFrame::OnSetDefaultAndFocusControls : Setting focused control. 9.053 | INFO: [NVI2.NVInstaller] 1924@CNVInstaller::InternalPerformInstall : Entering Checkpoint: Processing Package "GeforceNOW". 9.054 | DEBUG: [NVI2.NVInstaller] 2607@CNVInstaller::InitializeNvxFile : Creating NVX file C:\users\focht\Local Settings\Application Data\NVIDIA Corporation\Installer2\GeforceNOW.{400AB75D-3BE1-4466-9139-E9D90C38EBEA}\GeForceNOW.NVX. 9.081 | WARNING: [NVI2.NVInstaller] 2785@CNVInstaller::InitializeNvxFile : Property "FailureLogLocation" not recorded, type= 0. 9.088 | WARNING: [NVI2.NVInstaller] 2785@CNVInstaller::InitializeNvxFile : Property "CollectLogsOnFailure" not recorded, type= 0. 9.099 | DEBUG: [NVI2.NVInstaller] 2813@CNVInstaller::InitializeNvxFile : Manifest file: ".\GeForceNow.nvi". 9.100 | DEBUG: [NVI2.NVInstaller] 2813@CNVInstaller::InitializeNvxFile : Manifest file: ".\GeforceNow_Installer.exe". 9.101 | INFO: [NVI2.NVInstaller] 1700@CNVInstaller::IncreaseStepLimit : Allocated 0 available units to progress bar. 9.102 | INFO: [NVI2.NVInstaller] 2048@CNVInstaller::InternalPerformInstall : Entering Checkpoint: Processing Package Phases in "GeforceNOW". 9.104 | INFO: [NVI2.NVInstaller] 2942@CNVInstaller::InternalPerformInstallPackagePhases : Default full progress title is "Installing NVIDIA GeForce NOW...". 9.105 | INFO: [NVI2.NVInstaller] 1700@CNVInstaller::IncreaseStepLimit : Allocated 0 available units to progress bar. 9.106 | INFO: [NVI2.NVInstaller] 1700@CNVInstaller::IncreaseStepLimit : Allocated 15 available units to progress bar. ... 12.926 | INFO: [NVI2.NVInstaller] 2048@CNVInstaller::InternalPerformInstall : Exiting Checkpoint: Processing Package Phases in "GeforceNOW" ( 3824 ms ). 12.960 | ERROR: [NVI2.NVInstaller] 2128@CNVInstaller::InternalPerformInstall : Failing at package "GeforceNOW" failed with error: Exception {0xe0e00000} - aborting install. 12.961 | INFO: [NVI2.NVInstaller] 1924@CNVInstaller::InternalPerformInstall : Exiting Checkpoint: Processing Package "GeforceNOW" ( 3908 ms ). 12.962 | INFO: [NVI2.NVInstaller] 1904@CNVInstaller::InternalPerformInstall : Exiting Checkpoint: Processing Packages ( 3911 ms ). 12.965 | ERROR: [NVI2.InstallThread] 54@CInstallThread::ThreadProc : Install failed - Exception {0xe0e00000; File: Registry.cpp; Line: 152; While loading C:\windows\system32\ADVAPI32.DLL} - going to fail state. 12.967 | INFO: [NVI2.NVInstaller] 3969@CNVInstaller::InternalProcessFinalStatus : Calling all extensions to process final status -522190848. 12.968 | INFO: [NVI2.NVInstaller] 3986@CNVInstaller::InternalProcessFinalStatus : Calling "C:\users\focht\Local Settings\Application Data\NVIDIA Corporation\Installer2\CoreTemp.{8C5ADD65-5DB9-4E5A-95C4-9AE052773273}\NVI2UI.DLL" to process final status. 12.969 | INFO: [NVI2.NVInstaller] 3991@CNVInstaller::InternalProcessFinalStatus : No processing of finalStatus is carried out, continuing to next extension. 12.970 | DEBUG: [NVI2.Installation] 107@CInstallationStepper::Present : Presenting "!InstallFailed". --- snip ---
Microsoft Docs:
https://docs.microsoft.com/en-us/windows/desktop/api/winreg/nf-winreg-regque...
Wine source:
https://source.winehq.org/git/wine.git/blob/HEAD:/dlls/advapi32/advapi32.spe...
--- snip --- 671 # @ stub RegQueryReflectionKey --- snip ---
$ sha1sum GeForceNOW-release.exe 9c7c50f9572464c4f1205eede2534580937481c8 GeForceNOW-release.exe
$ du -sh GeForceNOW-release.exe 59M GeForceNOW-release.exe
$ wine --version wine-3.15-94-gbfe8510ec0
Regards
https://bugs.winehq.org/show_bug.cgi?id=45796
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- URL| |https://download.nvidia.com | |/gfnpc/GeForceNOW-release.e | |xe Keywords| |download, Installer Depends on| |45795
https://bugs.winehq.org/show_bug.cgi?id=45796
jorg.pavol@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jorg.pavol@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=45796
Louis Lenders xerox.xerox2000x@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |xerox.xerox2000x@gmail.com
--- Comment #1 from Louis Lenders xerox.xerox2000x@gmail.com --- Created attachment 62634 --> https://bugs.winehq.org/attachment.cgi?id=62634 add stub for RegQueryReflectionKey
attached stub , will send later to wine-devel
https://bugs.winehq.org/show_bug.cgi?id=45796
--- Comment #2 from Louis Lenders xerox.xerox2000x@gmail.com --- Hi, this should be fixed by 924fd31cadacab61a9d258c2abd9ad2df6729c42 Could you retest? Regards
https://bugs.winehq.org/show_bug.cgi?id=45796
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Fixed by SHA1| |924fd31cadacab61a9d258c2abd | |9ad2df6729c42 Status|NEW |RESOLVED
--- Comment #3 from Anastasius Focht focht@gmx.net --- Hello folks,
this is fixed by commit https://source.winehq.org/git/wine.git/commitdiff/924fd31cadacab61a9d258c2ab...
Thanks Louis
--- snip --- ... 0032:Call KERNEL32.LoadLibraryW(00169e28 L"C:\windows\system32\ADVAPI32.DLL") ret=102724dc 0032:Ret KERNEL32.LoadLibraryW() retval=7e690000 ret=102724dc 0032:Call ntdll.RtlDeleteCriticalSection(01ddf31c) ret=10272520 0032:Ret ntdll.RtlDeleteCriticalSection() retval=00000000 ret=10272520 0032:Call KERNEL32.GetProcAddress(7e690000,103a1ad8 "RegDeleteKeyExW") ret=10272368 0032:Ret KERNEL32.GetProcAddress() retval=7e6a1f10 ret=10272368 0032:Call KERNEL32.GetProcAddress(7e690000,1037b7c4 "RegQueryReflectionKey") ret=10272368 0032:Ret KERNEL32.GetProcAddress() retval=7e6a2270 ret=10272368 0032:Call KERNEL32.GetProcAddress(7e690000,1037b7dc "RegDeleteTreeW") ret=10272368 0032:Ret KERNEL32.GetProcAddress() retval=7e6a1f88 ret=10272368 0032:Call advapi32.RegDeleteTreeW(000000b8,02146048 L"GeforceNOW") ret=1026773f 0032:Ret advapi32.RegDeleteTreeW() retval=00000000 ret=1026773f ... 0071:Call KERNEL32.GetProcAddress(7e690000,1037b7c4 "RegQueryReflectionKey") ret=10272368 0071:Ret KERNEL32.GetProcAddress() retval=7e6a2270 ret=10272368 0071:Call KERNEL32.GetProcAddress(7e690000,1037b7dc "RegDeleteTreeW") ret=10272368 0071:Ret KERNEL32.GetProcAddress() retval=7e6a1f88 ret=10272368 0071:Call advapi32.RegDeleteTreeW(00000064,0016ad08 L"Pending") ret=1026773f 0071:Ret advapi32.RegDeleteTreeW() retval=00000000 ret=1026773f --- snip ---
Tidbit: The function isn't called at all, even an autogenerated stub would have been fine.
$ wine --version wine-3.19-50-g3d5a256797
Regards
https://bugs.winehq.org/show_bug.cgi?id=45796
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #4 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 3.20.
https://bugs.winehq.org/show_bug.cgi?id=45796 Bug 45796 depends on bug 45795, which changed state.
Bug 45795 Summary: Nvidia GeForce Now installer aborts due to failure to process xml config https://bugs.winehq.org/show_bug.cgi?id=45795
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |DUPLICATE
https://bugs.winehq.org/show_bug.cgi?id=45796
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- URL|https://download.nvidia.com |https://web.archive.org/web |/gfnpc/GeForceNOW-release.e |/20181211210432/https://dow |xe |nload.nvidia.com/gfnpc/GeFo | |rceNOW-release.exe