I'm compiling Wine in Docker according to the https://wiki.winehq.org/Building_Wine specifications. This is not an issue, but I was thinking it's worth mentioning since it might be the cause of the issue described below.
Everything compiles fine and I have access to 32-bit/64-bit Wine environment. Now I've installed dotnet46, which conflicts with the dotnet40 (note that I haven't installed dotnet40 previously, but that happened automatically).
However, I can edit /home/eleanor/.wine64/winetricks.log and remove dotnet40 from the file, which now contains the following entries (after the removal of dotnet40):# WINEARCH="win64" WINEPREFIX=/home/user/.wine64 winetricks dotnet46
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Using winetricks 20171018-next - sha256sum: fba6e574c98f61a82b3a9fa3cec8d2d69245c739dc571c2397bad7167bcd328c with wine-2.21 and WINEARCH=win64
Executing w_do_call dotnet46
------------------------------------------------------
error: dotnet46 conflicts with dotnet40, which is already installed.
------------------------------------------------------
Code: Select all
w_workaround_wine_bug-34803
remove_mono
w_workaround_wine_bug-34803
remove_mono
w_workaround_wine_bug-42701
w_workaround_wine_bug-34803
remove_mono
winxp
dotnet45
w_workaround_wine_bug-38959
dotnet46
w_workaround_wine_bug-34803
remove_mono
w_workaround_wine_bug-42701
w_workaround_wine_bug-34803
remove_mono
winxp
dotnet45
Now, if I try to install Windows Driver Kit (WDK) - not the standalone version, but the latest https://developer.microsoft.com/en-us/w ... driver-kit (wdksetup.exe). Doing that on my host Linux machine results in the RoGetParameterizedTypeInstanceIID error, which is solved by the https://source.winehq.org/git/wine.git/ ... 0382ff54a1 commit (3 days old). However, the installation fails at 66%, so there is bunch of stuff that occurs prior to the application closing - the WDK wizard leads me through the settings and the installation continues until the RoGetParameterizedTypeInstanceIID error, which reverts the installation and closes the wizard.$ WINEARCH="win64" WINEPREFIX=/home/user/.wine64 winetricks dotnet46
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Using winetricks 20171018-next - sha256sum: fba6e574c98f61a82b3a9fa3cec8d2d69245c739dc571c2397bad7167bcd328c with wine-2.21 and WINEARCH=win64
Executing w_do_call dotnet46
dotnet46 already installed, skipping
As such, I've proceeded further into compiling my own version of Wine directly from git - I'm doing this in Docker. Note that I've installed everything the way it states in the documentation and it appears that everything works fine, so the installation was successful (both 64-bit/32-bit Wine). However running wdksetup.exe in the new Wine will result in a WDK installation window appearing for a brief second after which the application crashes. The following is the output printed to stdout:
I'm interested in understanding why the installation wizard crashes. Could it be somehow connected to Docker image and if not, what would be the likely cause it fails (presumably something is visible in the log to the trained eye).# WINEARCH="win64" WINEPREFIX=/home/user/.wine64 wine wdksetup.exe
fixme:wer:WerSetFlags (2) stub!
fixme:heap:RtlSetHeapInformation (nil) 1 (nil) 0 stub
err:module:import_dll Library MSVCR120_CLR0400.dll (which is needed by L"C:\\windows\\Microsoft.NET\\Framework64\\v4.0.30319\\mscorsvw.exe") not found
err:module:import_dll Library mscoree.dll (which is needed by L"C:\\windows\\Microsoft.NET\\Framework64\\v4.0.30319\\mscorsvw.exe") not found
err:module:LdrInitializeThunk Main exe initialization for L"C:\\windows\\Microsoft.NET\\Framework64\\v4.0.30319\\mscorsvw.exe" failed, status c0000135
err:service:process_send_command service protocol error - failed to write pipe!
fixme:service:scmdatabase_autostart_services Auto-start service L"clr_optimization_v4.0.30319_64" failed to start: 1053
fixme:heap:RtlSetHeapInformation (nil) 1 (nil) 0 stub
fixme:heap:RtlSetHeapInformation (nil) 1 (nil) 0 stub
fixme:ntdll:NtQueryInformationToken QueryInformationToken( ..., TokenElevation, ...) semi-stub
fixme:heap:RtlSetHeapInformation (nil) 1 (nil) 0 stub
fixme:heap:RtlSetHeapInformation (nil) 1 (nil) 0 stub
fixme:ntdll:NtQueryInformationToken QueryInformationToken( ..., TokenElevation, ...) semi-stub
fixme:advapi:DecryptFileW (L"C:\\users\\user\\Temp\\{a2dc32b2-d7ac-425c-9947-551c3b16f848}\\", 00000000): stub
fixme:ntdll:EtwEventRegister ({319dc449-ada5-50f7-428e-957db6791668}, 0xc91925, 0xcddbd0, 0xcddbe8) stub.
fixme:ntdll:EtwEventSetInformation (deadbeef, 2, 0xc72f3d, 28) stub
fixme:ntdll:EtwEventRegister ({319dc449-ada5-50f7-428e-957db6791668}, 0xeb75a8, 0x1336470, 0x1336488) stub.
fixme:ntdll:EtwEventSetInformation (deadbeef, 2, 0xe28861, 28) stub
fixme:kernelbase:QuirkIsEnabled3 (0x33ed18, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f170, 0xffffffff) stub!
fixme:process:GetNumaHighestNodeNumber (0x33f450): semi-stub
fixme:kernelbase:QuirkIsEnabled3 (0x33f170, 0xffffffff) stub!
fixme:thread:SetThreadStackGuarantee (0x33f434): stub
fixme:kernelbase:QuirkIsEnabled3 (0x33f028, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ec08, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ec08, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ec08, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ec08, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33e880, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33e880, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ecf8, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef20, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef20, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef20, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ef28, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f180, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f158, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f148, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f138, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f130, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f0a8, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f098, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f098, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f100, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33eeb0, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f120, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f150, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f150, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f130, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f130, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f130, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f150, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33e1b8, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33f170, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ed48, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ed58, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33e5a8, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33e5a8, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33e4e8, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33e2f8, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ec88, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ec88, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ec88, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33ec88, 0xffffffff) stub!
fixme:combase:RoGetParameterizedTypeInstanceIID stub: 4 0x195cdc 0x33ccac 0x33d318 (nil)
fixme:combase:RoGetParameterizedTypeInstanceIID stub: 3 0x195cc8 0x33ce9c 0x33d508 (nil)
fixme:combase:RoGetParameterizedTypeInstanceIID stub: 3 0x195cc8 0x33ce9c 0x33d508 (nil)
fixme:ole:CoGetApartmentType (0x398fb08, 0x398fb04): semi-stub
fixme:combase:RoGetParameterizedTypeInstanceIID stub: 2 0x196c24 0x33e054 0x33e6c0 (nil)
fixme:kernelbase:QuirkIsEnabled3 (0x33ede0, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33edd0, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33edd0, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33eef8, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33eee0, 0xffffffff) stub!
fixme:nls:get_dummy_preferred_ui_language (0x8 0x33dea0 (nil) 0x33de9c) returning a dummy value (current locale)
fixme:nls:get_dummy_preferred_ui_language (0x8 0x33dea0 0x199110 0x33de9c) returning a dummy value (current locale)
fixme:nls:LCMapStringEx unsupported lparam 1aa898
fixme:nls:get_dummy_preferred_ui_language (0x8 0x33e888 (nil) 0x33e884) returning a dummy value (current locale)
fixme:nls:get_dummy_preferred_ui_language (0x8 0x33e888 0x1ab7f0 0x33e884) returning a dummy value (current locale)
fixme:kernelbase:QuirkIsEnabled3 (0x33ed58, 0xffffffff) stub!
fixmeURL_ParseUrl failed to parse L"BootstrapperCore"
fixme:kernelbase:QuirkIsEnabled3 (0x33cc08, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33da78, 0xffffffff) stub!
fixmeURL_ParseUrl failed to parse L"System.Configuration"
fixme:kernelbase:QuirkIsEnabled3 (0x33cba0, 0xffffffff) stub!
fixmeURL_ParseUrl failed to parse L"System"
fixme:kernelbase:QuirkIsEnabled3 (0x33c638, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33d960, 0xffffffff) stub!
fixmeURL_ParseUrl failed to parse L"System.Xml"
fixme:kernelbase:QuirkIsEnabled3 (0x33d190, 0xffffffff) stub!
fixme:combase:RoGetParameterizedTypeInstanceIID stub: 4 0x1baadc 0x33d1bc 0x33d828 (nil)
fixme:combase:RoGetParameterizedTypeInstanceIID stub: 3 0x1b86c0 0x33d3ac 0x33da18 (nil)
fixme:combase:RoGetParameterizedTypeInstanceIID stub: 3 0x1b86c0 0x33d3ac 0x33da18 (nil)
fixmeURL_ParseUrl failed to parse L"BootstrapperCore"
fixmeURL_ParseUrl failed to parse L"Microsoft.Bootstrapper"
fixme:kernelbase:QuirkIsEnabled3 (0x33e020, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33e020, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33e020, 0xffffffff) stub!
fixme:kernelbase:QuirkIsEnabled3 (0x33da18, 0xffffffff) stub!
fixmeURL_ParseUrl failed to parse L"System"
fixme:combase:RoGetParameterizedTypeInstanceIID stub: 2 0x1be10c 0x33d74c 0x33ddb8 (nil)
fixme:combase:RoGetParameterizedTypeInstanceIID stub: 2 0x1be10c 0x33d74c 0x33ddb8 (nil)
fixme:ole:Context_CC_ContextCallback (0x1af560/0x1af564)->(0xd93d61, 0x4f5f174, {d7174f82-36b8-4aa8-800a-e963ab2dfab9}, 2, (nil))
fixme:ole:Context_CC_ContextCallback (0x1af560/0x1af564)->(0xd93d61, 0x4f5f174, {d7174f82-36b8-4aa8-800a-e963ab2dfab9}, 2, (nil))
fixme:ole:Context_CC_ContextCallback (0x1af560/0x1af564)->(0xd93d61, 0x4f5f174, {d7174f82-36b8-4aa8-800a-e963ab2dfab9}, 2, (nil))
fixme:ole:Context_CC_ContextCallback (0x1af560/0x1af564)->(0xd93d61, 0x4f5f174, {d7174f82-36b8-4aa8-800a-e963ab2dfab9}, 2, (nil))
fixme:kernelbase:QuirkIsEnabled3 (0x4f5e940, 0xffffffff) stub!
fixme:ver:GetCurrentPackageId (0x4f5d82c (nil)): stub
fixme:combase:RoGetParameterizedTypeInstanceIID stub: 2 0x1be108 0x4f5c97c 0x4f5cfe8 (nil)
fixme:combase:RoGetParameterizedTypeInstanceIID stub: 2 0x1be108 0x4f5cb6c 0x4f5d1d8 (nil)
fixme:combase:RoGetParameterizedTypeInstanceIID stub: 2 0x1be108 0x4f5cb6c 0x4f5d1d8 (nil)
fixme:ntdll:EtwEventRegister ({8e9f5090-2d75-4d03-8a81-e5afbf85daf1}, 0x3aa3b66, (nil), 0x1838f9c) stub.
fixme:ole:Context_CC_ContextCallback (0x1af560/0x1af564)->(0xd93d61, 0x4f5f17c, {d7174f82-36b8-4aa8-800a-e963ab2dfab9}, 2, (nil))
fixme:ole:Context_CC_ContextCallback (0x1af560/0x1af564)->(0xd93d61, 0x4f5f19c, {d7174f82-36b8-4aa8-800a-e963ab2dfab9}, 2, (nil))
fixme:ole:CoGetApartmentType (0x33f968, 0x33f964): semi-stub
fixme:kernelbase:QuirkIsEnabled3 (0x33f620, 0xffffffff) stub!
fixme:ole:CoGetApartmentType (0x33f688, 0x33f684): semi-stub
fixme:ole:CoGetApartmentType (0x33f688, 0x33f684): semi-stub
fixme:ntdll:EtwEventUnregister (deadbeef) stub.
fixme:process:FlushProcessWriteBuffers : stub
fixme:ole:CoGetApartmentType (0x33f688, 0x33f684): semi-stub
fixme:kernelbase:QuirkIsEnabled3 (0x398f928, 0xffffffff) stub!
fixme:ole:CoGetApartmentType (0x33f698, 0x33f694): semi-stub
fixme:ole:Context_CC_ContextCallback (0x1af560/0x1af564)->(0xd93d61, 0x398f6b4, {d7174f82-36b8-4aa8-800a-e963ab2dfab9}, 2, (nil))
fixme:ole:Context_CC_ContextCallback (0x1af560/0x1af564)->(0xd93d61, 0x398f63c, {d7174f82-36b8-4aa8-800a-e963ab2dfab9}, 2, (nil))
fixme:ntdll:EtwEventUnregister (deadbeef) stub.
fixme:ntdll:EtwEventUnregister (deadbeef) stub.
Also, how would I go about debugging this issue in order to understand why the installation wizard crashes. I know there's a winedbg utility, but I'm not sure whether this is the right tool to use, nor what commands to type into it.
Any ideas are welcome.# WINEARCH="win64" WINEPREFIX=/home/user/.wine64 winedbg wdksetup.exe
fixme:wer:WerSetFlags (2) stub!
fixme:heap:RtlSetHeapInformation (nil) 1 (nil) 0 stub
err:module:import_dll Library MSVCR120_CLR0400.dll (which is needed by L"C:\\windows\\Microsoft.NET\\Framework64\\v4.0.30319\\mscorsvw.exe") not found
err:module:import_dll Library mscoree.dll (which is needed by L"C:\\windows\\Microsoft.NET\\Framework64\\v4.0.30319\\mscorsvw.exe") not found
err:module:LdrInitializeThunk Main exe initialization for L"C:\\windows\\Microsoft.NET\\Framework64\\v4.0.30319\\mscorsvw.exe" failed, status c0000135
err:service:process_send_command service protocol error - failed to write pipe!
fixme:service:scmdatabase_autostart_services Auto-start service L"clr_optimization_v4.0.30319_64" failed to start: 1053
WineDbg starting on pid 0034
couldn't load main module (2)
err:module:LdrInitializeThunk Main exe initialization for L"Z:\\home\\user\\data\\wdksetup.exe" failed, status c0000022
Process of pid=0034 has terminated
Wine-dbg>
Wine-dbg>start
No process loaded, cannot execute 'start'