Possible issue installing the .NET Framework 3.5 on an XP Embedded image that includes the .NET Framework 2.0


Recently, a customer contacted me with a question about a .NET Framework 3.5 installation error they were running into on a Windows XP Embedded runtime image.  I worked with the XP Embedded team to post more details about the cause of this issue and how to work around it in this item on the Embedded team blog, but I also wanted to mention it here as well in order to hopefully make it easier to find in the future.

Description of the issue

The customer who contacted me has a Windows XP Embedded image that contains the .NET Framework 2.0 Windows XP Embedded component.  When they attempt to run .NET Framework 3.5 setup on this image, it displays the following error and then fails:

Microsoft .NET Framework 2.0 Service Pack 1 -- Setup has determined that this version of .NET Framework is part of your operating system and cannot be installed or uninstalled with this setup. Use Windows Update for all future updates to .NET Framework. Setup will now exit.

Behind the scenes, the .NET Framework 3.5 installer is trying to install the .NET Framework 2.0 SP1 MSI package. The .NET Framework 2.0 SP1 MSI contains logic to block it from installing when it detects that the .NET Framework 2.0 was installed as an OS component, and that causes this error dialog to appear.  When using the .NET Framework 2.0 component for Windows XP Embedded, the .NET Framework 2.0 is treated as an OS component and cannot be updated using MSI-based installers.

How to work around the issue

If you have a Windows XP Embedded runtime with the .NET Framework 2.0 component included, and you need to install the .NET Framework 3.5 on the image after it has been deployed, you can work around this blocking dialog by removing the following registry value from your runtime:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727]
OCM=1

When doing this, it is important to note that the .NET Framework 3.5 has additional dependencies that were not needed for the .NET Framework 2.0. Even after removing this registry value, you may run into errors during .NET Framework 3.5 installation if your Windows XP Embedded runtime image does not include these dependencies.  If you have included the dependencies required for the .NET Framework 3.0 into your runtime image (described in this blog post), then you should be able to install the .NET Framework 3.5 as well.

Comments (12)

  1. Andrea Valori says:

    I have installed the 3.5 framework on a xpe runtime image based on the sp3 update of xpe. I use (only to discover dependencies) the 3.0sp1 component of the embedded studio. After, I deploy the runtime and install the 3.5 (without installing the 2.0,3.0,3.0sp1 frameworks): all seems to work fine but if I try to connect with the remote desktop I can’t login (I can’t see the login screen, the connection shuts down prior the login screen) and no errors returns to me. Any idea? Thanks in advance, Andrea Valori

  2. Hi Andrea Valori – I’m not sure what would cause that remote desktop connectivity issue in your image, but I don’t know anything within the .NET Framework that would cause that.  I’d suggest posting this question on one of the Windows XP Embedded forums at http://forums.microsoft.com/embeddedwindows/default.aspx?siteid=47 and hopefully someone there will be able to suggest some troubleshooting steps for you to try.

  3. binaryFX says:

    Thank You SO MUCH for this post.  Aaron Stebner you are the MAN!!!!

    I have been working all day on a serious problem for our thin clients at over fourteen locations.

    Our Point of Sale vendor’s .NET Software attempts to validate against Verisign’s CRL but the terminals do not have Internet Access by design.  Deploying new XPe images site-wide at this stage was not feasible, but we needed .NET 2.0 SP1 in order for to use an appconfig file to bypass this "feature" of Authenticode Applications.

    I could not find any way to get .NET 2.0 SP1 installed on XPe until I found Aaron’s post.  Thank You Thank You Thank You!!

  4. I made it work (XP SP3) - .net 3.5 says:

    1) Cleaned all versions of .net AND go.microsoft.com

    (Restart)

    2) Downloaded and installed (.NET Framework Client Profile) http://www.microsoft.com/…/details.aspx

    Some useful sites

    go.microsoft.com

  5. SUbbu says:

    I have been able to install .net Framework 3.5 SP 1 on a windows embedded XP 2002 sp 2.

    For this I had to install Windows 3.1 installer and then I was able to install the .net 3.5 Framework SP 1.

    However, once I restart the system, the softwares i.e. windows installer 3.1 and the .net Framework 3.5 Sp 1 gets uninstalled automatically.

    Please let me know the possible cause and the workaround.

  6. Hi SUbbu – Do you have any of the Windows XP Embedded write filters enabled on your system?  That's the one thing I can think of that would cause things to be removed after a reboot.  If that is the case, you'll need to disable them, install the software, and then re-enable them to persist the changes.  If that isn't the case on your system, then I'd suggest posting a question on the Windows Embedded forums to see if someone there can help further.  You can find those forums at social.technet.microsoft.com/…/home.

  7. Satish says:

    Hi

    I tried to install .net framework 3.5 in windows server 2003 SP1. But i cant able to install after trying many possibilities. I am getting error 399 Generic error. Please suggest how to install.

  8. Hi Satish – Can you please use the tool described at blogs.msdn.com/…/6458047.aspx to collect all of your setup log files, upload the file named %temp%vslogs.cab that this tool will create to a file server (such as http://onedrive.live.com), and then reply back here and provide a link that I can use to download your log files and take a closer look?

  9. Gabriel says:

    Hi, I try installing .net framework 3.5 on my window xp. after successful download, .net framework 3.5 could not be installed. this is the message i got " An error occurred during setup. Installed files have been removed from your computer". A check on the error log i saw " blocking components exist and must be satisfied before continuing to install. failed to pass the warnings/blocks checks in csscenario::start() etc". please what should i do?

  10. Hi Gabriel – Can you please use the tool described at blogs.msdn.com/…/6458047.aspx to collect all of your setup log files, upload the file named %temp%vslogs.cab that this tool will create to a file server (such as http://onedrive.live.com), and then reply back here and provide a link that I can use to download your log files and take a closer look?

  11. manal says:

    i can not install dot net 3.5 on xp sp 3

  12. Hi manal – I'd suggest trying the repair steps and tools listed at blogs.msdn.com/…/8108332.aspx to see if they help in this scenario.

    If those don't help, then can you please use the tool described at blogs.msdn.com/…/6458047.aspx to collect all of your setup log files, upload the file named %temp%vslogs.cab that this tool will create to a file server (such as http://onedrive.live.com), and then reply back here and provide a link that I can use to download your log files and take a closer look?

Skip to main content