.Net 4.5 Errors after upgrade from Vista SP2 64bit to Windows 7 RTM, SP1 won't install

07
2014-07
  • AJ Henderson

    I recently upgraded from Vista 64bit SP2 Professional to Windows 7 64bit Professional. Most everything went smoothly, however after the update, any time I try to use an application that uses .Net 4 or 4.5, I get a repairing tool that runs for a while, however it doesn't seem to do anything as it comes back the next time.

    Certain .Net 4 and 4.5 applications were working, however some were not. I attempted to use the repair tool for .Net 4.5 and that failed. I also tried to use the clean up tool and rebooted after that, however re-installed failed to complete successfully and now no .Net 4 or 4.5 based applications work.

    Any ideas what could have caused my .Net runtime to get so screwed up? Any ideas how to fix it? Is it possibly related to 4.5.1 being installed with Vista SP2 but then not being compatible with Windows 7 without SP 1 installed?

    Here is the CBS log files requested.

  • Answers
  • AJ Henderson

    This issue resulted from .Net 4.5.1 already being installed on Vista SP2 to Windows 7 RTM, which is not compatible with .Net 4.5.1. This is additionally complicated by the fact Windows 7 RTM doesn't understand what .Net 4.5.1 is and misbehaves when trying to remove it.

    It also appears that the Microsoft .Net Cleanup Tool does not recognize that it should check for that scenario since it first does a check of the current OS and doesn't expect 4.5.1 to be installed.

    After further review of the log files from the .Net 4 installer, I was able to get the GUID of the installation of .Net 4.5.1 and manually feed it in to MSIExec to uninstall using the /x command line parameter and the installation GUID.

    After uninstalling .Net 4.5.1, the installation of .Net versions as well as SP1 proceeded fine and .Net applications resumed working properly.


  • Related Question

    .NET 2.0 "not installed" after upgrade to Windows 7
  • Greg B

    I Recently upgraded to Windows 7 (Business) RTM from Vista Business and everything is going great, it fixed the BSOD I was getting and the performance of my laptop is improved.

    However; during the upgrade, something seems to have gone awry with my .NET 2.0 installation.

    When attempting to install FlashDevelop, I get the following error from the installer package

    You need to install Maicrtosoft.NET 2.0 runtime before installing FlasgDevelop. You Have .

    I have a previous release of FD installed from before the upgrade and this still works fine.

    So I gave up on the new version of FD and got on with my day.

    Then I tried to install the Microsoft SQL Server Database Publishing Wizard 1.1 and that says I am missing a couple of prerequisites, one of which is .NET 2.0.

    When I download the .NET 2.0 runtime the installer fails, telling me that

    This product is already installed as part of the operating system.

    Does anyone have any idea how to make my computer recognise that .NET 2 is in fact installed.

    UPDATE

    I've checked Windows Features and everything relating to .NET is already installed.

    I've also been through my list of installed programs looking for .NET to in an attempt to uninstall it but it isn't there. In fact, the only thing that looks like a .NET distro that I am able to uninstall is the 3.5 Compact Framework.


  • Related Answers
  • pipTheGeek

    I think although .net is part of Windows 7, it can be turned on and off. Open control panel, choose programs, then choose "Turn windows features on or off". There should be an option then for turning on .NET support.

    The OP has confirmed that .NET 3.5 is listed as installed in windows features. My next suggestion would be to try removing and re-installing .NET 3.5 SP1. You should be able to remove from the previously mentioned windows features list. Then download the .NET 3.5 SP1 installer and install that. Then run a check for updates to get the last few bits.

  • harrymc

    Have you tried to uninstall all your .net frameworks and then re-install 3.5?
    I have it from good authority that if 3.5 is correctly installed then the prerequisite of 2.0 and upwards should automatically be treated as installed.

  • slhck

    Try cleaning up your .NET framework installation using the .NET Framework Cleanup Tool: http://blogs.msdn.com/astebner/archive/2006/05/30/611355.aspx

    I've run into this before with some Tax software. In the case of the tax software, the installer was looking for version 2.0 of the .NET framework...EXACTLY version 2.0.

    If I had .NET 2.0 SP1, it assumed I did't have the framework installed -- FAIL. If I had .NET 3.5, same story -- FAIL.

    A less-than-perfect solution was to downgrade my .NET framework to 2.0. Then install the software. Then upgrade my .NET framework back to 3.5 SP1. It was a pain in the butt, but it worked.

  • Matt Hanson

    The .NET Framework 3.5 is definitely installed on Windows 7 by default, and is backwards compatible supporting previous versions. That being said, if the FlashDevelop is looking specific Framework files marked with version 2 when it's doing a prerequisite check, that might change everything. Is there any switch to force the install FlashDevelop, or ignore or surpress any warnings?

  • Greg B

    In my experience, .net 2.0 apps are NOT generally supported by .net 3.5 - it's not different versions of the same framework, it's different frameworks with different (but similar) functionality and you need to have .net 2.0 installed for applications that require .net 2.0 and .net 3.5 installed for applications that require .net 3.5 - .net 3.5 does not "subclass" .net 2.0. So what I don't get is whether that has changed recently (Windows 7) and if anyone can clarify this it'd be useful.

  • Tom Wijsman

    You can try to use the cleanup tool as administrator (use method 2) and then run sfc /scannow in evevated command prompt.