> For the complete documentation index, see [llms.txt](https://www.osdeploy.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://www.osdeploy.com/archive/blog/2019/2019-06/offline-servicing-windows-10-with-cu-for-.net-4.8.md).

# Offline Servicing Windows 10 with CU for .NET 4.8

I received a question in email concerning the .NET Cumulative Updates

> Thanks for your incredible modules. I’m just getting started with them, but really like them so far. I work for a hospital and unfortunately we have applications that are not yet compatible with .NET 4.8. In fact, I believe we are currently locked at 4.7.1. When I run the “Update-OSMedia” step, for Windows 10 v1709 Enterprise, I am only presented with updates for v4.8

Checking OSDBuilder's **`Update-OSMedia`**, yes there are Cumulative Updates for .NET Framework 4.8 that are applied

![](https://3996045416-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LDKRxGiKLYjW1gana2O%2F-LiMWXlkqdihDyKRTJEE%2F-LiMXoN1uKgMBLiekxWo%2Fimage.png?alt=media\&token=d866668d-f6dd-4b3d-81b2-5b29d7d4ccc0)

### Is .NET Framework 4.8 Installed

The easiest method is to check if .NET Framework 4.8 is installed is to check for the Release value in the Registry

```
Get-ChildItem 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\' |  Get-ItemPropertyValue -Name Release
```

On Windows 10 1709 with full Updates to June 27, 2019, **Release 461308** is returned

![](https://3996045416-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LDKRxGiKLYjW1gana2O%2F-LiMWXlkqdihDyKRTJEE%2F-LiMZHAhj7ImEPyhPwWI%2Fimage.png?alt=media\&token=e070af0c-a2fe-4700-84da-bd0ce80037cf)

A quick check in the .NET Framework Version shows that Windows 10 1709 as .NET Framework 4.7.1 installed, **so no, .NET Framework 4.8 is not installed**

{% embed url="<https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/how-to-determine-which-versions-are-installed#version_table>" %}

![](https://3996045416-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LDKRxGiKLYjW1gana2O%2F-LiMWXlkqdihDyKRTJEE%2F-LiM_04Mk7tSnEHxQnfS%2Fimage.png?alt=media\&token=8295d2ac-a482-405e-9aab-8ddf0045e497)

### Check the .NET Framework Cumulative Update's Log

You could easily see by checking the Log that the Update is not installed and marked 'Absent'. This is because it does not meet the requirements for installation ... because .NET Framework 4.8 is not installed

![](https://3996045416-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LDKRxGiKLYjW1gana2O%2F-LiMWXlkqdihDyKRTJEE%2F-LiM_i4gbHw3XMmT2Rkm%2Fimage.png?alt=media\&token=01bee13d-9156-4851-a28f-acb9e4adf201)

### Conclusion

**Installing a Cumulative Update for .NET Framework 4.8 only installs if you have .NET Framework 4.8 installed.**

### More Clarity

After sharing this post with the person that send me the original question, I received a reply

> I read your post, but I don’t feel it provided an answer that I was looking for. Most likely I did not express my question accurately. We knew 4.7.1 was installed out of the box with 1709. We just have special requirements to keep .NET at that version, but patched.

**Let me be absolutely clear**

* Installing a Cumulative Update for .NET Framework 4.8 in Windows (online or offline) will only update the .NET Framework 4.8 files
* If you do not have .NET Framework 4.8, it will not update anything
* If you have .NET Framework 4.7.1, it will not upgrade it to .NET Framework 4.8

### So if the Updates are not actually installing, then why have them in OSDBuilder?

Because I'm lazy.

What this means is that I dedicate sometimes several hours a week keeping new Updates in OSDBuilder. I do not have the time to test every Update on every Windows version and review the log files to see what is actually being installed and what is not. Updates can change weekly. I am not willing to do this because I don't want to dedicate 10 hours a week to checking every Update. I have a job, a family, and a life.

And yes I did spend some length of time writing this post so it can be fully understood. Rather then just answer the person that emailed, I prefer to write this post so others with the same question can understand.

### The Short Answer

**If you want .NET Framework 4.8 installed, you need to do this in Windows, not through Offline Servicing**


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://www.osdeploy.com/archive/blog/2019/2019-06/offline-servicing-windows-10-with-cu-for-.net-4.8.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
