0

Somehow, since monday morning I haven't been able to start MS Visual Studio 2015 Enterprise. It was working fine last friday, and now the splashscreen just blinks, and nothing else happens.

I tried:

  • Fixes suggested here, here and here
  • This involved check Windows Logs (none present), removed HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\14.0 entries in register, running with various options like /SafeMode /ResetSettings /Resetuserdata and running the repair utility from setup. Also the XML activity logs, which weren't present, even though I did use VS for quite some time.
  • Removed all previous versions of VS, completely reinstalled VS 2015

Running it with devenv /Setup gives the following error:

Could not load file or assembly 'PresentationFramework, Version=4.0.0.0, Culture
=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The modul
e was expected to contain an assembly manifest.

I think that is the problem, but I cannot find a working fix. I'm using .NET 4.6.01055 and CLR v4.0.30319.

Please note that when I ran into the error in VS 2015, VS 2013 wouldn't start either, crashing with a TaskScheduler Exception. I'm not a 100% sure, but I can remember that VS 2013 ran fine not too long ago.

So, I'm at a loss here.

Community
  • 1
  • 1
Wouter Pol
  • 1,031
  • 1
  • 8
  • 16
  • repair .net 4.6 via programs & features – magicandre1981 Oct 18 '16 at 14:40
  • Thank you for the suggestion. Unfortunately, the problem persists. – Wouter Pol Oct 19 '16 at 07:31
  • capture a xperf trace of the start of VS: http://stackoverflow.com/a/29374658/1466046 use the 8.1 SDK/WPT: https://developer.microsoft.com/en-us/windows/downloads/windows-8-1-sdk – magicandre1981 Oct 19 '16 at 07:35
  • Haha, loading PerfView relies on the same PresentationFramework, so I get the same error as with launching VS... – Wouter Pol Oct 19 '16 at 08:11
  • zip the ETL+NGENPDB folder and share it to me: https://www.dropbox.com/request/VDRyGf4sbSjBv0zjCpDZ I'll take a look at it – magicandre1981 Oct 19 '16 at 08:22
  • Done, and thank you in advance! – Wouter Pol Oct 19 '16 at 08:41
  • you used the Ui and not the script, so the required data are not included. Change the path in the script from 8.1 to 10 and run the script. – magicandre1981 Oct 19 '16 at 09:26
  • I'm sorry, but using the script I can't generate a .PDB and from what I understand, the .etl won't be of any use without it. Thank you for your time! – Wouter Pol Oct 19 '16 at 10:33
  • the PDBs are usefull for callsatcks when ngened DLLs are called. Without the PDBs you can't see the function names – magicandre1981 Oct 19 '16 at 12:10
  • run the WPRUI.exe, click on **add profile** and load this profile from my dropbox: https://www.dropbox.com/s/fyzpofkaww8f253/DotNetRuntimeOnly.wprp?dl=0 Select "First Level" and my Dotnet profile, click start, run VS and after you got the message click on save – magicandre1981 Oct 19 '16 at 12:13
  • An "event session cannot be started with any providers error". Not seeing any documentation on this error. – Wouter Pol Oct 19 '16 at 12:58
  • for me it works fine in a 8.1 VM + Win10 WPT (I selected the profile, first level and CPU usage) – magicandre1981 Oct 19 '16 at 13:50
  • Dont ask me why, but it worked after a few more tries. https://www.dropbox.com/s/vdcpu33qkauzeh1/trace.rar?dl=0 – Wouter Pol Oct 19 '16 at 14:21

2 Answers2

1

From the ETL I can see that you get a System.BadImageFormatException (0x80131018) while loading the PresentationFramework dll.

<Event MSec= "18182,2520" PID="7288" PName=  "devenv" TID="7680" EventName="Binding/FusionMessage" ClrInstanceID="39" Prepend="False" Message="ERR: Error encountered when binding to native image assembly. (hr = 0x80131018)."/>

So a DLL with wrong CPU architecture was tried to be loaded. VisualStudio is 32Bit, so the file at C:\Windows\Microsoft.Net\assembly\GAC_MSIL\PresentationFramework\v4.0_4.0.0.0__31bf3856ad364e35\PresentationFramework.dll is maybe 64Bit on your system.

magicandre1981
  • 27,895
  • 5
  • 86
  • 127
  • Thank you for your time and effort! It would appear that my PresentationFramework.dll is indeed 64bit. Very weird that VS ran fine not a week a go, since I doubt that an update I installed, swapped my entire .NET from 32bit to 64bit – Wouter Pol Oct 20 '16 at 07:14
-1

Restore Windows to a point before Monday and then try to launch or reinstall VS again.

jcs
  • 611
  • 2
  • 9
  • 22
  • Done that, still no change – Wouter Pol Oct 18 '16 at 13:26
  • Why the downvote? He said it was working fine and then stopped working with no reason. If it was something outside VS that caused the problem, restoring Windows to a point when it was working couldn't help? – jcs Oct 21 '16 at 11:29