[Bug 48023] Visual Studio 2019 not starting

WineHQ Bugzilla wine-bugs at winehq.org
Wed Feb 23 09:23:10 CST 2022


https://bugs.winehq.org/show_bug.cgi?id=48023

--- Comment #6 from Lorenzo Ferrillo <lorenzofer at live.it> ---
Created attachment 71911
  --> https://bugs.winehq.org/attachment.cgi?id=71911
actctx use build_assembly_dir to assign assembly->dir field

Update: with the latest ncrypt patches from Santino Mazza, the vs WebInstaller
can be launched directly without the manual ODT workaround (winetricks
d3dcompiler_47 is a prequisite)
then installed dotnet472 with winetricks and msxml6 (note for me installing
msxml6 before dotnet seems to make dotnet461 and dotnet462 hang with a
deadlock, when using gui mode, but it succeeded the time I tried quiet mode,
however more testing is required)
Selected C++ component in VS installer.
Install complete, but the
Microsoft.DiagnosticsHub.Collection.StopService.Install give an error
"c:\windows\syswow64\sc.exe" stop VSStandardCollectorService150 (return Invalid
function)
The first start of devenv.exe doesn't work. A devenv.exe.config it's  generated
and then read from AppData\Local (and not from the Program Files folder) but
it's empty. You can see in the ActivityLog.xml a list of not found assemblies,
but they are present and installed. This happen becouse actctx doesn't set
properly the assembly directory. In another issue on this tracker there is an
old patch ,that I have rebased, and attached.
A workaround for this is to copy the devenv.exe.config from the deven.exe dir
to Appdata\local dir and changing relativeBindForResources to "false" 
After this passage, the Login UI shows up but:
1) It hangs immediatly and the log spam threads blocked  loader and heap CS 
2) As 1 but give a warning message about component not loading
3) The program termiate with a runtime termination.
4) Program terminate with a dotnet exception
System.AccessViolationException: Attempted to read or write protected memory.
This is often an indication that other memory is corrupt.
   at
Microsoft.Internal.VisualStudio.Shell.Interop.IVsPackageManagerPrivate.LoadPackageWithContext(Guid&
packageGuid, Int32 reason, Guid& context)


The ActivityLog has some errors:
Failed to set Public Key Token        80070057 - E_INVALIDARG    
Binding Redirect / CodeBase entry from configuration hive is malformed,
ignoring.
Software\Microsoft\VisualStudio\16.0_0c573400_Config\RuntimeConfiguration\dependentAssembly\codeBase\{7E3052B2-FB42-4E38-B22C-1FD281BD4413}
       80070057 - E_INVALIDARG    
Binding Redirect / CodeBase entry from configuration hive is malformed,
ignoring.
Software\Microsoft\VisualStudio\16.0_0c573400_Config\RuntimeConfiguration\dependentAssembly\codeBase\{938D3E45-5067-45C4-9349-5E939A639CBF}
       80070057 - E_INVALIDARG    
(Note these keys doesn't exist in regedit, and
Software\Microsoft\VisualStudio\16.0_0c573400_Config is linked to keys that
should be written to the privateregistry.bin with RegLoadAppKey. Maybe these
keys were supposed to be in the real registry and they are shadowed by the
RegLoadAppKey Hack, or they are written to the file in another way )
Failed to find CTMENU resource '#1000' in loaded UI library.    
Loading UI library    {2FFE45C4-5C73-493C-B187-F2E955FF875E}    800a006f
Error loading UI library for package
Microsoft.VisualStudio.LanguageServices.TypeScript.TypeScriptPackage,
Microsoft.VisualStudio.LanguageServices.TypeScript, Version=16.0.0.0,
Culture=neutral. HrLoadNativeUILibrary failed with 0x800a006f.    
SetSite failed for package [Visual Studio Common IDE Package]Source: 'mscorlib'
Description: Value cannot be null. Parameter name: type
System.ArgumentNullException: Value cannot be null. Parameter name: type at
System.Activator.CreateInstance(Type type, Boolean nonPublic) at
System.Activator.CreateInstance(Type type) at
Microsoft.VisualStudio.CommonIDE.PreviewFeatures.UsePreviewSdk.IsPreviewChannel() 

the program also try to load a OLB typelib with TLB_ReadTypeLib in this case
dte80a.olb, but it search it in C:\Program Files (x86)\Microsoft Visual
Studio\2019\Community\Common7\IDE
instead of C:\Program Files (x86)\Microsoft Visual
Studio\2019\Community\Common7\IDE\Automation where they are togheter with their
manifest.

Note that not all these errors appear every run, it's probably initializing
something in mutlithreaded ways, and depending on what run (and fail) before it
hang/ crash in different spots.

Note the attached patch seems to solve some errors from ngen.exe Optimization
Service during dotnet40 (and following) installation. Not sure if these errors
were problematic or not.
The {6D5140C1-7436-11CE-8034-00AA006009FA}\ProxyStubClsid32
 is  {B8DA6310-E19B-11D0-933C-00A0C90DCAA9} (ActXPrxy.dll) not
{A4A1A128-768F-41E0-BF75-E4FDDD701CBA} (ieproxy.dll) 
But replacing them doesn't make any difference.
Also in here ActXPrxy.dll is B8DA6310-E19B-11D0-933C-00A0C90DCAA9 not
C90250F3-4D7D-4991-9B69-A5C5BC1C2AE6 (non-existant) as in Bruni comment. Other
entry mentioned by Bruni are equals.

-- 
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.



More information about the wine-bugs mailing list