[Bug 51345] New: Regression: Visual Studio 2005 "package load failure"
https://bugs.winehq.org/show_bug.cgi?id=51345 Bug ID: 51345 Summary: Regression: Visual Studio 2005 "package load failure" Product: Wine Version: 6.11 Hardware: x86-64 OS: FreeBSD Status: NEW Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs(a)winehq.org Reporter: damjan.jov(a)gmail.com winetricks vc2005trial wine cmd "C:\Program Files\Microsoft Visual Studio 8\VC\vcvarsall.bat" devenv Some time during 28-31 March 2021, the Visual Studio 2005 trial began giving +/- 10 of these error dialogs on startup, each relating to a different package. This is a rough transcript of one of them: ------------------------ Package Load Failure ------------------------ Package 'Microsoft.VisualStudio.TestTools.TestCaseManagement.QualtyToolsPackage, Microsoft.VisualStudio.QualityTools.TestCaseManagement, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03F5F7f11d50s3a' has failed to load properly { GUID = {AS4DSAES-9ACE-4FOE-ADGF-7AFESSFEFCET) ). Please contact package vendor for assistance. Application restart is recommended, due to possible environment corruption. Would you like to disable loading this package in the future? You may use 'devenv /resetskippkgs' to re-enable package loading. Yes No ------------------------ It is the worst git bisect I've ever done. Apart from the lengthy time needed to test each commit, the regression occurs within a range of 44 commits (bb065801a69..2a8a4cbbe63), the first 43 of which all die on startup, so we can't easily distinguish that bug from this one. I've now had to make a separate branch, "git rebase --onto <that range>" to copy commits from that range there, then "git rebase -i" to reorder them and separate the startup-breaking commits (ntdll/kernel32/kernelbase) from the other commits. Unfortunately, having done so, it appears the startup-breaking commits are also the commits that caused this regression. One or more of these is the culprit: ntdll: Move kernel32 loading into LdrInitializeThunk(). ntdll: Return system dir path for PE mapping bootstrap placeholders. ntdll: Fail to load non-existent dlls, except during prefix bootstrap. ntdll: Also check syswow64 to determine if the prefix was initialized. include: Add more SYSTEM_INFORMATION_CLASS definitions. kernel32: Implement GetSystemCpuSetInformation(). ntdll: Implement NtQuerySystemInformationEx(SystemCpuSetInformation). kernelbase: Don't fall back to dll loading for LOAD_LIBRARY_AS_DATAFILE. ntdll: Set the window title to the image name on the Unix side. ntdll: Remove load_builtin_dll() and get_load_order() from the Unix interface. ntdll: Map the builtin or fake dll from the Wine dirs if it's missing from the prefix. -- 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.
https://bugs.winehq.org/show_bug.cgi?id=51345 Damjan Jovanovic <damjan.jov(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |julliard(a)winehq.org Keywords| |download, regression, | |testcase --- Comment #1 from Damjan Jovanovic <damjan.jov(a)gmail.com> --- I've narrowed it down further to these 7 commits: ntdll: Move kernel32 loading into LdrInitializeThunk(). ntdll: Return system dir path for PE mapping bootstrap placeholders. ntdll: Fail to load non-existent dlls, except during prefix bootstrap. ntdll: Also check syswow64 to determine if the prefix was initialized. kernelbase: Don't fall back to dll loading for LOAD_LIBRARY_AS_DATAFILE. ntdll: Remove load_builtin_dll() and get_load_order() from the Unix interface. ntdll: Map the builtin or fake dll from the Wine dirs if it's missing from the prefix. CC their author. -- 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.
https://bugs.winehq.org/show_bug.cgi?id=51345 Damjan Jovanovic <damjan.jov(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Distribution|--- |Ubuntu OS|FreeBSD |Linux --- Comment #2 from Damjan Jovanovic <damjan.jov(a)gmail.com> --- Happens on Linux too. Happens on both the PE and ELF builds. -- 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.
https://bugs.winehq.org/show_bug.cgi?id=51345 Damjan Jovanovic <damjan.jov(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |Installer --- Comment #3 from Damjan Jovanovic <damjan.jov(a)gmail.com> --- The order of the startup-related vs other commits within that sequence of 44 commits does not matter, the startup-related commits by themselves always reproduce the bug: good bad... | | | v v v +-----------------+-----------------+ | other | startup-related | +-----------------+-----------------+ good bad.................... | | | | | | | | v v v v v v v v +-----------------+-----------------+ | startup-related | other | +-----------------+-----------------+ Also, the bug happens during installation, not execution. Installing with a bad Wine version then running with a good version, still reproduces the bug. -- 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.
https://bugs.winehq.org/show_bug.cgi?id=51345 --- Comment #4 from Damjan Jovanovic <damjan.jov(a)gmail.com> --- One definite regression caused by those startup-related patches is the following: winetricks -q 7zip -> winemenubuilder crashes Why? 1. In winemenubuilder, to thumbnail the shortcut, open_module_icon() is called. 2. It calls: hModule = LoadLibraryExW(szFileName, 0, LOAD_LIBRARY_AS_DATAFILE); 3. The szFileName in this case is a .chm file, so loading fails. 4. open_module_icon() returns with the error: return HRESULT_FROM_WIN32(GetLastError()); 5. But GetLastError() == 0 with this startup-related patchset (which it didn't before), so HRESULT_FROM WIN32() returns 0. 6. The caller wrongly sees success. 7. The caller thus accesses the invalid IStream pointer -> CRASH. Hacking winemenubuilder to always return a failed HRESULT when LoadLibraryExW() fails stops it from crashing, but it still does not fix this bug. Maybe this bug is caused by the same problem happening somewhere other than winemenubuilder. Or, there are additional regressions introduced by that patchset. -- 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.
https://bugs.winehq.org/show_bug.cgi?id=51345 --- Comment #5 from Damjan Jovanovic <damjan.jov(a)gmail.com> --- (In reply to Damjan Jovanovic from comment #4)
Hacking winemenubuilder to always return a failed HRESULT when LoadLibraryExW() fails stops it from crashing, but it still does not fix this bug. Maybe this bug is caused by the same problem happening somewhere other than winemenubuilder. Or, there are additional regressions introduced by that patchset.
This is only a problem immediately after the patchset, it is no longer a problem in the latest master, so this bug must be due to a different regression from that patchset. -- 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.
https://bugs.winehq.org/show_bug.cgi?id=51345 Damjan Jovanovic <damjan.jov(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |ntdll --- Comment #6 from Damjan Jovanovic <damjan.jov(a)gmail.com> --- The kernelbase patch neither fixes the problem when reverted nor breaks it when applied alone on the prior good commits. The 6 remaining patches where the bug must lie, only affect ntdll: ntdll: Move kernel32 loading into LdrInitializeThunk(). ntdll: Return system dir path for PE mapping bootstrap placeholders. ntdll: Fail to load non-existent dlls, except during prefix bootstrap. ntdll: Also check syswow64 to determine if the prefix was initialized. ntdll: Remove load_builtin_dll() and get_load_order() from the Unix interface. ntdll: Map the builtin or fake dll from the Wine dirs if it's missing from the prefix. Setting component. -- 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.
https://bugs.winehq.org/show_bug.cgi?id=51345 Alex Henrie <alexhenrie24(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |alexhenrie24(a)gmail.com --- Comment #7 from Alex Henrie <alexhenrie24(a)gmail.com> --- Does it require 64-bit Wine to reproduce this bug? That could be an important clue. I ran `winetricks vc2005trial && wine cmd "C:\Program Files\Microsoft Visual Studio 8\VC\vcvarsall.bat" devenv` in a 32-bit Wine bottle and didn't get any errors. -- 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.
https://bugs.winehq.org/show_bug.cgi?id=51345 Hans Leidekker <hans(a)meelstraat.net> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Component|ntdll |msi Fixed by SHA1| |d9d700f3328f00ec419571df0e0 | |2cef208fa1e7b Status|NEW |RESOLVED --- Comment #8 from Hans Leidekker <hans(a)meelstraat.net> --- This turned out to be an msi bug uncovered by the loader changes. It should be fixed with d9d700f3328f00ec419571df0e02cef208fa1e7b. -- 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.
https://bugs.winehq.org/show_bug.cgi?id=51345 Alexandre Julliard <julliard(a)winehq.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED --- Comment #9 from Alexandre Julliard <julliard(a)winehq.org> --- Closing bugs fixed in 8.2. -- 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.
https://bugs.winehq.org/show_bug.cgi?id=51345 Michael Stefaniuc <mstefani(a)winehq.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |8.0.x -- 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.
https://bugs.winehq.org/show_bug.cgi?id=51345 Michael Stefaniuc <mstefani(a)winehq.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|8.0.x |--- --- Comment #10 from Michael Stefaniuc <mstefani(a)winehq.org> --- Removing the 8.0.x milestone from bug fixes included in 8.0.1. -- 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.
https://bugs.winehq.org/show_bug.cgi?id=51345 Damjan Jovanovic <damjan.jov(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|FIXED |--- Status|CLOSED |REOPENED --- Comment #11 from Damjan Jovanovic <damjan.jov(a)gmail.com> --- This was NOT fixed by d9d700f3328f00ec419571df0e02cef208fa1e7b. Wine 8.1 was released only 9 commits after d9d700f3328f00ec419571df0e02cef208fa1e7b, and this bug can still be reproduced with both Wine 8.1 and Wine 10.0-rc3 on Ubuntu Focal. Reopening. -- 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.
https://bugs.winehq.org/show_bug.cgi?id=51345 Damjan Jovanovic <damjan.jov(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |hans(a)meelstraat.net Keywords|testcase | -- 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.
https://bugs.winehq.org/show_bug.cgi?id=51345 --- Comment #12 from Damjan Jovanovic <damjan.jov(a)gmail.com> --- *** Bug 57605 has been marked as a duplicate of this bug. *** -- 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.
https://bugs.winehq.org/show_bug.cgi?id=51345 Austin English <austinenglish(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |austinenglish(a)gmail.com -- 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.
http://bugs.winehq.org/show_bug.cgi?id=51345 Damjan Jovanovic <damjan.jov(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Regression SHA1| |bb065801a693e1cd305d2a507c2 | |06f1b21a142d3 Component|msi |-unknown Hardware|x86-64 |x86 --- Comment #13 from Damjan Jovanovic <damjan.jov(a)gmail.com> --- (In reply to Alex Henrie from comment #7)
Does it require 64-bit Wine to reproduce this bug? That could be an important clue. I ran `winetricks vc2005trial && wine cmd "C:\Program Files\Microsoft Visual Studio 8\VC\vcvarsall.bat" devenv` in a 32-bit Wine bottle and didn't get any errors.
Still happens in Wine 10.13, in both x86-only and WoW64 Wine builds. After "winetricks vc2005trial", start Visual Studio using something like (customized to your user): wine start "users/...../AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Microsoft Visual Studio 2005/Microsoft Visual Studio 2005.lnk" and let it run for a while, and sooner or later you'll get those errors. At runtime, the problem appears to come from some files in C:\windows\assembly, because replacing that directory from a bad Wine version with a copy installed by a good Wine version, stops those error messages from coming up. When in C:\windows\assembly I do "find . -type f | sort" and run "diff -u" on the outputs of the good and bad Wine versions, there are quite a few files missing in the bad version, some of them resembling the names used in the error messages. There are also some files in C:\windows\assembly\NativeImages_v2.0.50727_32 with different paths, eg: -./NativeImages_v2.0.50727_32/System.Design/a7efb811cf8f9242842cb8b3f5420ff3/System.Design.ni.dll +./NativeImages_v2.0.50727_32/System.Design/4ebfa375a5dbd844a809dab2c9772123/System.Design.ni.dll but despite the .dll contents differing, file size is the same, so not sure that's relevant. These bad/missing DLLs in C:\windows\assembly are all .NET assemblies, according to "file". Last working Wine commit is 4a10f3a188e585bcf71bd191ab3d790f1a89b397, and the regression began at the first version thereafter that builds, so I'll set the regression to the version immediately after 4a10f3a188e585bcf71bd191ab3d790f1a89b397. -- 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.
http://bugs.winehq.org/show_bug.cgi?id=51345 Damjan Jovanovic <damjan.jov(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |dotnet --- Comment #14 from Damjan Jovanovic <damjan.jov(a)gmail.com> --- "winetricks vc2005trial" installs both .NET 2 Framework and Visual Studio 2005. 73 of the C:\windows\assembly files are made during .NET 2 installation, and 188 exist after Visual Studio is also installed. However replacing C:\windows\assembly from a "good" .NET installation just before the "bad" Wine installs Visual Studio, does not noticeably help. .NET 2 Framework makes (some of?) the NativeImages (or at least says so in the UI) by calling the infamous ngen.exe tool, "ngen.exe install ...". There are/were many bugs relating to ngen.exe, including bug 45930 which is still open. -- 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.
http://bugs.winehq.org/show_bug.cgi?id=51345 --- Comment #15 from Damjan Jovanovic <damjan.jov(a)gmail.com> --- Subdirectories of C:\windows\assembly and their contents by Wine version that installed them: Wine version Subdirectory | 4a10f3a188e585 | 10.13 ---------------+---------------------------+------------------------------ GAC | 18 files, all DLLs. | Directory doesn't exist. | Created during Visual | | Studio installation (not | | .NET installation). | ---------------+---------------------------+------------------------------ GAC_32 | Both have 39 DLLs with identical names and contents. ---------------+---------------------------+------------------------------ GAC_MSIL | 151 files, all DLLs. | 135 files, all DLLs. | | Each has the same name and | | contents as the DLL installed | | by 4a10f3a188e585. ---------------+---------------------------+------------------------------ NativeImages_ | index8.dat | v2.0.50727_32 | index9.dat | index9.dat (same) | | indexa.dat | 9 DLLs | 10 DLLs (The reason 10.13 has 10 DLLs in NativeImages but 4a10f3a188e585 has only 9 is because there's a System.Drawing.ni.dll missing from 4a10f3a188e585 but present in 10.13, which means there might have been a bug back in 4a10f3a188e585 which didn't affect Visual Studio.) So the main problem appears to be missing files in the GAC and GAC_MSIL subdirectories. GAC is completely missing and GAC_MSIL is 16 files short in Wine 10.13. Whether the different .dat files and DLL file contents in NativeImages_v2.0.50727_32 matter or not is uncertain. Now to test: - Adding "GAC" from Wine 4a10f3a188e585 to 10.13 (where it's missing) doesn't help. - Replacing Wine 10.13's "GAC_MSIL" with 4a10f3a188e585's doesn't help. - But doing both fixes the problem: no more error dialogs :-). So the problem doesn't appear to be file corruption, only missing files: - 16 missing files in C:\windows\assembly\GAC_MSIL. - The missing C:\windows\assembly\GAC directory with its 18 files. The missing GAC files are (paths removed): adodb.dll CrystalDecisions.Enterprise.Desktop.Report.dll CrystalDecisions.Enterprise.Framework.dll CrystalDecisions.Enterprise.InfoStore.dll CrystalDecisions.Enterprise.PluginManager.dll CrystalDecisions.Enterprise.Viewing.ReportSource.dll extensibility.dll Microsoft.mshtml.dll Microsoft.stdformat.dll microsoft.visualstudio.designer.interfaces.dll Microsoft.VisualStudio.OLE.Interop.dll Microsoft.VisualStudio.Shell.Interop.dll Microsoft.VisualStudio.TextManager.Interop.dll Microsoft.VisualStudio.VSHelp.dll msdatasrc.dll stdole.dll VSLangProj.dll VSLangProj2.dll The missing GAC_MSIL files are (paths removed): CrystalDecisions.Data.AdoDotNetInterop.dll envdte.dll envdte80.dll Microsoft.shdocvw.dll Microsoft.VisualStudio.CommandBars.dll Microsoft.VisualStudio.Debugger.Interop.dll Microsoft.VisualStudio.DeviceConnectivity.Interop.dll microsoft.visualstudio.shell.interop.8.0.dll microsoft.visualstudio.textmanager.interop.8.0.dll Microsoft.VisualStudio.VCCodeModel.dll Microsoft.VisualStudio.VCProject.dll Microsoft.VisualStudio.VCProjectEngine.dll Microsoft.VisualStudio.VSHelp80.dll msddsp.dll VSLangProj80.dll VsWebSite.Interop.dll These are clearly files that should be installed by Visual Studio. So why aren't they getting installed? -- 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.
http://bugs.winehq.org/show_bug.cgi?id=51345 --- Comment #16 from Damjan Jovanovic <damjan.jov(a)gmail.com> --- How Wine 6.6, the first release after 4a10f3a188e585, compares to the others: Wine version Subdirectory | 4a10f3a188e585 | 6.6 | 10.13 ---------------+---------------------------+------------------+------------------ GAC | 18 DLL files. | Directory doesn't exist. | Created during Visual | | Studio installation (not | | .NET installation). | ---------------+---------------------------+------------------------------------- GAC_32 | All have 39 DLLs with identical names and contents. ---------------+---------------------------+------------------------------------- GAC_MSIL | 151 files, all DLLs. | 135 files, all DLLs. | | Each has the same name and | | contents as the DLL installed | | by 4a10f3a188e585. ---------------+---------------------------+------------------+------------------ NativeImages_ | index8.dat | index8.dat | v2.0.50727_32 | index9.dat | index9.dat | index9.dat | | | indexa.dat | 9 DLLs | 9 DLLs | 10 DLLs -- 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.
http://bugs.winehq.org/show_bug.cgi?id=51345 --- Comment #17 from Hans Leidekker <hans(a)meelstraat.net> --- It would be interesting to compare to Windows as well. -- 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.
http://bugs.winehq.org/show_bug.cgi?id=51345 --- Comment #18 from Damjan Jovanovic <damjan.jov(a)gmail.com> --- (In reply to Hans Leidekker from comment #17)
It would be interesting to compare to Windows as well.
Even the most "correct" Wine version, 4a10f3a188e585, has files missing relative to Windows: Wine version Subdirectory | 4a10f3a188e585 | Windows ---------------+---------------------------+------------------------------ GAC | 18 DLLs. | 30 DLLs. ---------------+---------------------------+------------------------------ GAC_32 | 26 DLLs. | 29 DLLs. ---------------+---------------------------+------------------------------ GAC_MSIL | 151 DLLs. | 162 DLLs. ---------------+---------------------------+------------------------------ NativeImages_ | index8.dat | v2.0.50727_32 | index9.dat | | | indexe.dat | | indexf.dat | 9 DLLs | 15 DLLs This is at least partly because one of the MS SQL Servers (mobile or embedded edition) fails to install on Wine (and always did fail; unrelated issue). -- 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.
http://bugs.winehq.org/show_bug.cgi?id=51345 --- Comment #19 from Damjan Jovanovic <damjan.jov(a)gmail.com> --- Taking +msi,+process,+file,+pid traces with Wine 4a10f3a188e585 and Wine 6.6, filtering them for lines containing one of the files missing in comment 15 (eg. Microsoft.VisualStudio.VCCodeModel.dll), allows us to compare what happens to that file in those Wine versions. Wine 4a10f3a188e585: between cabinet_copy_file and DeleteFileW, CreateFileW is called 7 times, first installing Microsoft.VisualStudio.VCCodeModel.dll to C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PublicAssemblies\ in [1] - [3]. Then between [4] and [5], there is a CopyFileExW which copies it to C:\windows\assembly\ in [5], [6] and [7]: ---snip--- 06bc:06b0:trace:msi:cabinet_copy_file extracting L"Microsoft_VisualStudio_VCCodeModel_dll_1_____X86.3643236F_FC70_11D3_A536_0090278A1BB8" -> L"C:\\Program Files\\Microsoft Visual Studio 8\\Common7\\IDE\\PublicAssemblies\\Microsoft.VisualStudio.VCCodeModel.dll" [1] 06bc:06b0:trace:file:CreateFileW L"C:\\Program Files\\Microsoft Visual Studio 8\\Common7\\IDE\\PublicAssemblies\\Microsoft.VisualStudio.VCCodeModel.dll" GENERIC_READ GENERIC_WRITE creation 2 attributes 0x80 06bc:06b0:trace:msi:MSI_ProcessMessageVerbatim Calling UI handler 4F05B9A0(pvContext=0278D590, iMessageType=09000000, szMessage=L"File: Microsoft.VisualStudio.VCCodeModel.dll, Directory: PublicAssemblies.3643236F_FC70_11D3_A536_0090278A1BB8, Size: 106496") [2] 06bc:06b0:trace:file:CreateFileW L"C:\\users\\user\\Temp\\msi12b.tmp\\Microsoft.VisualStudio.VCCodeModel.dll" GENERIC_READ FILE_SHARE_READ creation 3 attributes 0x8000000 [3] 06bc:06b0:trace:file:CreateFileW L"C:\\users\\user\\Temp\\msi12b.tmp\\Microsoft.VisualStudio.VCCodeModel.dll" GENERIC_READ FILE_SHARE_READ creation 3 attributes 0x8000000 06bc:06b0:trace:msi:msi_install_assembly installing assembly L"C:\\users\\user\\Temp\\msi12b.tmp\\Microsoft.VisualStudio.VCCodeModel.dll" [4] 06bc:06b0:trace:file:CreateFileW L"C:\\users\\user\\Temp\\msi12b.tmp\\Microsoft.VisualStudio.VCCodeModel.dll" GENERIC_READ FILE_SHARE_READ creation 3 attributes 0x80 06bc:06b0:trace:file:CopyFileExW L"C:\\users\\user\\Temp\\msi12b.tmp\\Microsoft.VisualStudio.VCCodeModel.dll" -> L"C:\\windows\\assembly\\GAC_MSIL\\Microsoft.VisualStudio.VCCodeModel\\8.0.0.0__b03f5f7f11d50a3a\\Microsoft.VisualStudio.VCCodeModel.dll", 0 [5] 06bc:06b0:trace:file:CreateFileW L"C:\\users\\user\\Temp\\msi12b.tmp\\Microsoft.VisualStudio.VCCodeModel.dll" GENERIC_READ FILE_SHARE_READ FILE_SHARE_WRITE FILE_SHARE_DELETE creation 3 attributes 0x0 [6] 06bc:06b0:trace:file:CreateFileW L"C:\\windows\\assembly\\GAC_MSIL\\Microsoft.VisualStudio.VCCodeModel\\8.0.0.0__b03f5f7f11d50a3a\\Microsoft.VisualStudio.VCCodeModel.dll" QUERY_ACCESS FILE_SHARE_READ FILE_SHARE_WRITE creation 3 attributes 0x0 06bc:06b0:warn:file:CreateFileW Unable to create file L"C:\\windows\\assembly\\GAC_MSIL\\Microsoft.VisualStudio.VCCodeModel\\8.0.0.0__b03f5f7f11d50a3a\\Microsoft.VisualStudio.VCCodeModel.dll" (status c0000034) [7] 06bc:06b0:trace:file:CreateFileW L"C:\\windows\\assembly\\GAC_MSIL\\Microsoft.VisualStudio.VCCodeModel\\8.0.0.0__b03f5f7f11d50a3a\\Microsoft.VisualStudio.VCCodeModel.dll" GENERIC_WRITE FILE_SHARE_READ FILE_SHARE_WRITE creation 2 attributes 0x20 06bc:06b0:trace:file:DeleteFileW L"C:\\users\\user\\Temp\\msi12b.tmp\\Microsoft.VisualStudio.VCCodeModel.dll" ---snip--- Wine 6.6: between cabinet_copy_file and DeleteFileW, CreateFileW is called 3 times, and these match [1], [2] and [3] for 4a10f3a188e585. However [4] - [7] never appear, instead it jumps straight to DeleteFileW. Also, note how 4a10f3a188e585 logs "trace:msi:msi_install_assembly installing assembly ..." after [3], but Wine 6.6 doesn't log anything: ---snip--- 03e4:trace:msi:cabinet_copy_file extracting L"Microsoft_VisualStudio_VCCodeModel_dll_1_____X86.3643236F_FC70_11D3_A536_0090278A1BB8" -> L"C:\\Program Files\\Microsoft Visual Studio 8\\Common7\\IDE\\PublicAssemblies\\Microsoft.VisualStudio.VCCodeModel.dll" [1] 03e4:trace:file:CreateFileW L"C:\\Program Files\\Microsoft Visual Studio 8\\Common7\\IDE\\PublicAssemblies\\Microsoft.VisualStudio.VCCodeModel.dll" GENERIC_READ GENERIC_WRITE creation 2 attributes 0x80 03e4:trace:msi:MSI_ProcessMessageVerbatim Calling UI handler 4F05B9A0(pvContext=027AD540, iMessageType=09000000, szMessage=L"File: Microsoft.VisualStudio.VCCodeModel.dll, Directory: PublicAssemblies.3643236F_FC70_11D3_A536_0090278A1BB8, Size: 106496") [2] 03e4:trace:file:CreateFileW L"C:\\users\\user\\Temp\\msi12b.tmp\\Microsoft.VisualStudio.VCCodeModel.dll" GENERIC_READ FILE_SHARE_READ creation 3 attributes 0x8000000 [3] 03e4:trace:file:CreateFileW L"C:\\users\\user\\Temp\\msi12b.tmp\\Microsoft.VisualStudio.VCCodeModel.dll" GENERIC_READ FILE_SHARE_READ creation 3 attributes 0x8000000 03e4:trace:file:DeleteFileW L"C:\\users\\user\\Temp\\msi12b.tmp\\Microsoft.VisualStudio.VCCodeModel.dll" ---snip--- Why isn't msi_install_assembly() getting called any more, at least for this DLL and certain others? -- 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.
http://bugs.winehq.org/show_bug.cgi?id=51345 --- Comment #20 from Hans Leidekker <hans(a)meelstraat.net> --- Looks like the missing assemblies are v1.0 assemblies while the ones that are installed are v2.0. -- 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.
http://bugs.winehq.org/show_bug.cgi?id=51345 --- Comment #21 from Hans Leidekker <hans(a)meelstraat.net> --- (In reply to Hans Leidekker from comment #20)
Looks like the missing assemblies are v1.0 assemblies while the ones that are installed are v2.0.
This is because builtin fusion is no longer used. wine-mono installs a copy of fusion.dll for each major .NET version while native .NET 2.0 installs only one, which does support installing older assemblies. -- 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.
http://bugs.winehq.org/show_bug.cgi?id=51345 --- Comment #22 from Hans Leidekker <hans(a)meelstraat.net> --- Created attachment 79252 --> http://bugs.winehq.org/attachment.cgi?id=79252 patch This patch should help. Still needs testing with various .NET installers. -- 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.
http://bugs.winehq.org/show_bug.cgi?id=51345 --- Comment #23 from Damjan Jovanovic <damjan.jov(a)gmail.com> --- With this patch, there are now 18 DLL files in GAC, 25 in GAC_32, 149 in GAC_MSIL, and 10 in NativeImages*. Visual Studio starts up without any error messages, and seems fully functional :-). Excellent work Hans, thank you so much! -- 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.
http://bugs.winehq.org/show_bug.cgi?id=51345 Esme Povirk <madewokherd(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |madewokherd(a)gmail.com -- 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.
http://bugs.winehq.org/show_bug.cgi?id=51345 Damjan Jovanovic <damjan.jov(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |msi -- 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.
http://bugs.winehq.org/show_bug.cgi?id=51345 Hans Leidekker <hans(a)meelstraat.net> changed: What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1|d9d700f3328f00ec419571df0e0 |ee6edca45557544b893cd8bf58a |2cef208fa1e7b |ef28a08c0b3bb Status|REOPENED |RESOLVED Resolution|--- |FIXED --- Comment #24 from Hans Leidekker <hans(a)meelstraat.net> --- Fixed with ee6edca45557544b893cd8bf58aef28a08c0b3bb. Thanks for the bug report! -- 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.
http://bugs.winehq.org/show_bug.cgi?id=51345 Alexandre Julliard <julliard(a)winehq.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED --- Comment #25 from Alexandre Julliard <julliard(a)winehq.org> --- Closing bugs fixed in 10.15. -- 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.
participants (1)
-
WineHQ Bugzilla