http://bugs.winehq.org/show_bug.cgi?id=30713
Bug #: 30713 Summary: 64 bit wine installs 64 bit mfc100.dll to syswow64 Product: Wine Version: 1.4 Platform: x86 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: dank@kegel.com Classification: Unclassified
Downloading and running http://download.microsoft.com/download/A/8/0/A80747C3-41BD-45DF-B505-E9710D2... (see http://www.microsoft.com/en-us/download/details.aspx?id=13523 ) with WINEARCH=win64 does install mfc100.dll... but into c:\windows\syswow64, which seems wrong.
This was with wine-1.4. I'll test again with current wine once I figure out how to build it.
http://bugs.winehq.org/show_bug.cgi?id=30713
--- Comment #1 from Dan Kegel dank@kegel.com 2012-05-17 15:25:36 CDT --- Evidence that the installed file is 64 bit:
$ file /home/dank/.wine/drive_c/windows/syswow64/mfc100.dll /home/dank/.wine/drive_c/windows/syswow64/mfc100.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows
http://bugs.winehq.org/show_bug.cgi?id=30713
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, Installer, win64 URL| |http://download.microsoft.c | |om/download/A/8/0/A80747C3- | |41BD-45DF-B505-E9710D2744E0 | |/vcredist_x64.exe CC| |focht@gmx.net Component|-unknown |msi Summary|64 bit wine installs 64 bit |Microsoft Visual C++ 2010 |mfc100.dll to syswow64 |64-bit redistributables get | |incorrectly installed into | |SysWOW64 (system directory | |for 32-bit files) when run | |under 64-bit Wine
--- Comment #2 from Anastasius Focht focht@gmx.net 2012-05-17 15:43:09 CDT --- Hello,
that happens because the installer is a 32-bit process and everything is executed client-side.
--- snip --- ... 0024:Call KERNEL32.CreateProcessA(00000000,0100d3e0 "c:\d552ccb2b0d25502fbf1ca6a8e39\Setup.exe ",00000000,00000000,00000000,00000020,00000000,0100d080 "c:\d552ccb2b0d25502fbf1ca6a8e39",0032fd3c,0032fda4) ret=01005d78 0027:Call KERNEL32.__wine_kernel_init() ret=7bc530d2 ... 0024:Ret KERNEL32.CreateProcessA() retval=00000001 ret=01005d78 ... 0029:Call msi.MsiInstallProductW(001f7570 L"C:\d552ccb2b0d25502fbf1ca6a8e39\vc_red.msi",001f4038 L"EXTUI=1") ret=1004ce2d 0029:trace:msi:MsiInstallProductW L"C:\d552ccb2b0d25502fbf1ca6a8e39\vc_red.msi" L"EXTUI=1" 0029:trace:msi:MSI_OpenPackageW L"C:\d552ccb2b0d25502fbf1ca6a8e39\vc_red.msi" 0xbde6a0 ... --- snip ---
MsiInstallProduct() is called at 32-bit client-side hence everything is redirected into syswow64 instead of system32.
What is needed here is a 64-bit msi server process that takes over the product install part from the 32-bit client side.
This is not to be confused with 32/64-bit custom action server process (bug 29941 and bug 27943)
Regards
http://bugs.winehq.org/show_bug.cgi?id=30713
--- Comment #3 from Dan Kegel dank@kegel.com 2012-05-17 15:57:32 CDT --- Thanks, AF.
I just checked in a change to winetricks so 'winetricks vcrun2010' installs both 32 and 64 bit runtimes if WINEARCH=win64. It's a bit of a kludge, but it makes at least one app happy.
http://bugs.winehq.org/show_bug.cgi?id=30713
Julian Rüger jr98@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jr98@gmx.net
http://bugs.winehq.org/show_bug.cgi?id=30713
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |madewokherd@gmail.com
--- Comment #4 from Dan Kegel dank@kegel.com 2012-06-25 11:33:43 CDT --- *** Bug 31015 has been marked as a duplicate of this bug. ***
http://bugs.winehq.org/show_bug.cgi?id=30713
--- Comment #5 from Austin English austinenglish@gmail.com 2013-08-02 12:12:11 CDT --- Still in wine-1.6-204-g0c9321e
http://bugs.winehq.org/show_bug.cgi?id=30713
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |austinenglish@gmail.com
http://bugs.winehq.org/show_bug.cgi?id=30713
--- Comment #6 from Anastasius Focht focht@gmx.net 2013-10-04 04:44:06 CDT --- *** Bug 34649 has been marked as a duplicate of this bug. ***
http://bugs.winehq.org/show_bug.cgi?id=30713
Martin Meyer elreydetodo@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |elreydetodo@gmail.com
http://bugs.winehq.org/show_bug.cgi?id=30713
Berillions berillions@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |berillions@gmail.com
--- Comment #7 from Berillions berillions@gmail.com --- EA Origin downloader is unusable into a 64-bits prefix thanks to this bug because the EA Origin setup install itself vcrun2010 32/64-bits.
"err:module:import_dll Loading library msvcr100.dll (which is needed by L"C:\windows\system32\msvcp100.dll") failed (error c000007b). err:module:import_dll Loading library MSVCP100.dll (which is needed by L"C:\Program Files (x86)\Origin\Origin.exe") failed (error c000007b). err:module:import_dll Loading library MSVCR100.dll (which is needed by L"C:\Program Files (x86)\Origin\Origin.exe") failed (error c000007b). err:module:LdrInitializeThunk Main exe initialization for L"C:\Program Files (x86)\Origin\Origin.exe" failed, status c0000135"
Install vcrun2010 thanks to winetricks (winetricks --force vcrun2010) after Origin installation does not help, there are still the wrong dll into syswow64 folder.
http://bugs.winehq.org/show_bug.cgi?id=30713
jre.winesim@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jre.winesim@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=30713
--- Comment #8 from Nikolay Sivov bunglehead@gmail.com --- (In reply to Anastasius Focht from comment #2)
MsiInstallProduct() is called at 32-bit client-side hence everything is redirected into syswow64 instead of system32.
What is needed here is a 64-bit msi server process that takes over the product install part from the 32-bit client side.
It sounds similar to services.exe server - we need 64bit msiserver on 64bit prefix and 32bit one for 32bit prefix, not a mix of both. And it looks like we'll need to move substantial part of msi.dll to it to make it work.
I know very little about msi format or installer behavior in general, how do they usually specify installation location (when you can't override it)? Because if it goes like */system32/* we'll need same manual manipulations to make it work as we need to start 32 bit service with 64bit server.
https://bugs.winehq.org/show_bug.cgi?id=30713
--- Comment #9 from Berillions berillions@gmail.com --- An idea when this bug will be fixed ?
https://bugs.winehq.org/show_bug.cgi?id=30713
Qwerty Chouskie asdfghrbljzmkd@outlook.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |asdfghrbljzmkd@outlook.com
https://bugs.winehq.org/show_bug.cgi?id=30713
--- Comment #10 from Qwerty Chouskie asdfghrbljzmkd@outlook.com --- Is there a way to install native msi in wine to work around the issue? A search doesn't turn anything up about whether it can be done or not.
https://bugs.winehq.org/show_bug.cgi?id=30713
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |darkwingbuck13@gmail.com
--- Comment #11 from Anastasius Focht focht@gmx.net --- *** Bug 43095 has been marked as a duplicate of this bug. ***
https://bugs.winehq.org/show_bug.cgi?id=30713
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Microsoft Visual C++ 2010 |Microsoft Visual C++ 64-bit |64-bit redistributables get |redistributables get |incorrectly installed into |incorrectly installed into |SysWOW64 (system directory |SysWOW64 (system directory |for 32-bit files) when run |for 32-bit files) when run |under 64-bit Wine |under 64-bit Wine
--- Comment #12 from Anastasius Focht focht@gmx.net ---
Hello folks,
revisiting, still present.
Also encountered with bug 43095 (VC++ 2015 x64 runtime).
Refining summary to target all versions of MS VC++ 64-bit runtime installers.
Regards
https://bugs.winehq.org/show_bug.cgi?id=30713
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dark.shadow4@web.de
https://bugs.winehq.org/show_bug.cgi?id=30713
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Blocks| |43673
https://bugs.winehq.org/show_bug.cgi?id=30713
Kim Malmo berencamlost@msn.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |berencamlost@msn.com
https://bugs.winehq.org/show_bug.cgi?id=30713
JPT j-p-t@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |j-p-t@gmx.net
--- Comment #13 from JPT j-p-t@gmx.net --- Still unsolved. Affects wine-2.19-staging.
https://bugs.winehq.org/show_bug.cgi?id=30713
TesX tesfabpel@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |tesfabpel@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=30713
winetaste@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |winetaste@gmx.net
https://bugs.winehq.org/show_bug.cgi?id=30713
Sebastiaan sebastiaanlokhorst@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |sebastiaanlokhorst@gmail.co | |m
https://bugs.winehq.org/show_bug.cgi?id=30713
--- Comment #14 from winetaste@gmx.net --- Same here.
Wine version: 2.22 OS: Ubuntu 17.10
Bug 40743 seems to be a duplicate.
This problem is also present, if you directly run the msi-file packed in the exe-file. Same as with complete .exe-setup, same as with the msi-files in iTunes:
cabextract -d vcredist_x64 vcredist_x64.exe
/vcredist_x64$ msiexec -i vc_red.msi
/syswow64$ file mfc100.dll mfc100.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows
No mfc100.dll in system32.
https://bugs.winehq.org/show_bug.cgi?id=30713
Louis Lenders xerox.xerox2000x@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |xerox.xerox2000x@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=30713
Géza Búza bghome@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |bghome@gmail.com
--- Comment #15 from Géza Búza bghome@gmail.com --- *** Bug 44320 has been marked as a duplicate of this bug. ***
https://bugs.winehq.org/show_bug.cgi?id=30713
Zebediah Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |z.figura12@gmail.com
--- Comment #16 from Zebediah Figura z.figura12@gmail.com --- Also affects Windows Media Encoder 9 64-bit edition. In this case the application also fails to regsvr32 its DLLs.
https://bugs.winehq.org/show_bug.cgi?id=30713
tokktokk fdsfgs@krutt.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |fdsfgs@krutt.org
https://bugs.winehq.org/show_bug.cgi?id=30713
rebe@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |rebe@gmx.net
--- Comment #17 from rebe@gmx.net --- Is there a way to do a pre/post installation diff under Windows as to find out exactly what the installer did to the system?
Under wine we would simply copy the wineprefix directory as a baseline and then run a post installation wineprefix diff.
https://bugs.winehq.org/show_bug.cgi?id=30713
--- Comment #18 from Anastasius Focht focht@gmx.net --- Hello,
--- quote --- Is there a way to do a pre/post installation diff under Windows as to find out exactly what the installer did to the system? --- quote ---
there are certainly snapshot/monitor tools for Windows that hook into the system to record filesystem and registry changes during software installation:
https://www.raymond.cc/blog/tracking-registry-and-files-changes-when-install...
https://blogs.technet.microsoft.com/askperf/2010/01/11/an-introduction-to-th...
...
There are gazillion information resources about this topic ... Google is your friend.
--- quote --- Under wine we would simply copy the wineprefix directory as a baseline and then run a post installation wineprefix diff. --- quote ---
While this is certainly doable, be aware there is no support for bugs reported with these "manual fixup" installations ('winetricks' being the exception). Bug reports without proper installer run (msi, installshield, ...) will be usually rejected/ignored.
Regards
https://bugs.winehq.org/show_bug.cgi?id=30713
--- Comment #19 from rebe@gmx.net --- Thank you. The idea was to use information gathered for installer tests.
https://bugs.winehq.org/show_bug.cgi?id=30713
--- Comment #20 from winetaste@gmx.net --- Also affects official 64-bit MSI installer of 7zip: 7z1801-x64.msi - https://www.7-zip.org/download.html MSI is created with WiX Toolset: https://github.com/wixtoolset Destination folder: C:\Program Files (x86)\7-Zip\ instead of C:\Program Files\7-Zip\
Wine version: 3.3
https://bugs.winehq.org/show_bug.cgi?id=30713
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Fixed by SHA1| |540c48b91175b11c7b8646d0a03 | |6b20c46425080 Resolution|--- |FIXED
--- Comment #21 from Anastasius Focht focht@gmx.net --- Hello folks,
this is fixed by commit https://source.winehq.org/git/wine.git/commitdiff/540c48b91175b11c7b8646d0a0...
Thanks Zebediah
--- snip --- $ rm -rf ~/.wine
$ wine vcredist_x64.exe
$ find .wine ! -newermt "1 Jan 2015" -exec file {} ;
.wine/drive_c/Program Files/Common Files/Microsoft Shared/VC/msdia100.dll: PE32+ executable (DLL) (GUI) x86-64, for MS Windows .wine/drive_c/windows/Installer/61e1.msi: Composite Document File V2 Document, Little Endian, Os: Windows, Version 6.0, MSI Installer, Code page: 1252, Title: Installation Database, Subject: Visual C++ 2010 x64 Redistributable, Author: Microsoft Corporation, Keywords: Installer, Comments: This installer database contains the logic and data required to install Microsoft Visual C++ 2010 x64 Redistributable - 10.0.40219., Template: x64;0, Revision Number: {80902F2D-E1EF-43CA-B366-74496197E004}, Create Time/Date: Sun Feb 20 06:51:54 2011, Last Saved Time/Date: Sun Feb 20 06:51:54 2011, Number of Pages: 200, Name of Creating Application: Windows Installer XML (3.5.0626.3), Security: 2, Number of Words: 2 .wine/drive_c/windows/system32/mfc100.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows .wine/drive_c/windows/system32/mfc100ita.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows .wine/drive_c/windows/system32/mfc100deu.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows .wine/drive_c/windows/system32/mfc100jpn.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows .wine/drive_c/windows/system32/mfc100kor.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows .wine/drive_c/windows/system32/vcomp100.dll: PE32+ executable (DLL) (GUI) x86-64, for MS Windows .wine/drive_c/windows/system32/mfc100fra.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows .wine/drive_c/windows/system32/mfc100esn.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows .wine/drive_c/windows/system32/mfc100u.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows .wine/drive_c/windows/system32/mfcm100u.dll: PE32+ executable (DLL) (GUI) x86-64 Mono/.Net assembly, for MS Windows .wine/drive_c/windows/system32/atl100.dll: PE32+ executable (DLL) (GUI) x86-64, for MS Windows .wine/drive_c/windows/system32/mfc100rus.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows .wine/drive_c/windows/system32/msvcr100.dll: PE32+ executable (DLL) (GUI) x86-64, for MS Windows .wine/drive_c/windows/system32/mfcm100.dll: PE32+ executable (DLL) (GUI) x86-64 Mono/.Net assembly, for MS Windows .wine/drive_c/windows/system32/msvcp100.dll: PE32+ executable (DLL) (GUI) x86-64, for MS Windows .wine/drive_c/windows/system32/mfc100chs.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows .wine/drive_c/windows/system32/mfc100enu.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows .wine/drive_c/windows/system32/mfc100cht.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows --- snip ---
--- snip --- $ rm -rf ~/.wine
$ wine msiexec -i 7z1805-x64.msi
$ file .wine/drive_c/Program\ Files/7-Zip/*{.dll,.exe} .wine/drive_c/Program Files/7-Zip/7z.dll: PE32+ executable (DLL) (GUI) x86-64, for MS Windows .wine/drive_c/Program Files/7-Zip/7-zip32.dll: PE32 executable (DLL) (GUI) Intel 80386, for MS Windows .wine/drive_c/Program Files/7-Zip/7-zip.dll: PE32+ executable (DLL) (GUI) x86-64, for MS Windows .wine/drive_c/Program Files/7-Zip/7z.exe: PE32+ executable (console) x86-64, for MS Windows .wine/drive_c/Program Files/7-Zip/7zFM.exe: PE32+ executable (GUI) x86-64, for MS Windows .wine/drive_c/Program Files/7-Zip/7zG.exe: PE32+ executable (GUI) x86-64, for MS Windows --- snip ---
$ wine --version wine-3.7-77-g540c48b911
Regards
https://bugs.winehq.org/show_bug.cgi?id=30713
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #22 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 3.8.
https://bugs.winehq.org/show_bug.cgi?id=30713
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |3.0.x
https://bugs.winehq.org/show_bug.cgi?id=30713
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|3.0.x |---
--- Comment #23 from Michael Stefaniuc mstefani@winehq.org --- Removing the 3.0.x milestone from bugs included in 3.0.3.