.NET Framework w Windows 11 - co zainstalować i kiedy?

Wyszukiwanie funkcji Windows w systemie Windows 11. Wpisano "windows features", a system sugeruje "Turn Windows features on or off".

Spis treści

Starszy program desktopowy po aktualizacji systemu przestał się uruchamiać, a instalator wyświetla komunikat o braku .NET Framework? W Windows 11 najczęściej nie trzeba instalować przypadkowych paczek z internetu, ponieważ nowsze wydania platformy są już częścią systemu. Wyjaśniam, która wersja jest dostępna, jak sprawdzić jej obecność, kiedy doinstalować .NET Framework 3.5 lub 4.8.1 oraz czym różni się Runtime od Developer Pack.

Najważniejsze informacje o .NET Framework w Windows 11

  • .NET Framework 4.8.1 jest obecnie najnowszą wersją tej platformy.
  • Współczesne wydania Windows 11 mają wersję 4.8.1 zainstalowaną fabrycznie.
  • Starsze aplikacje mogą wymagać osobnego składnika .NET Framework 3.5.
  • Do uruchamiania programów wystarczy Runtime, a do tworzenia aplikacji potrzebny jest Developer Pack.
  • Wersję można sprawdzić bez instalowania dodatkowych narzędzi, korzystając z PowerShella lub rejestru systemowego.

Czy .NET Framework działa na Windows 11

Tak. Windows 11 obsługuje .NET Framework 4.8.1, czyli najnowsze wydanie klasycznej platformy Microsoftu przeznaczonej wyłącznie dla systemu Windows. Korzystają z niej między innymi programy WinForms, WPF, starsze narzędzia firmowe, aplikacje księgowe i wiele instalatorów napisanych w poprzednich generacjach .NET.

Współczesne, wspierane wydania systemu mają tę wersję wbudowaną. Dotyczy to między innymi Windows 11 22H2, 23H2, 24H2 i 25H2. Wydanie 21H2 zawierało początkowo .NET Framework 4.8, ale można je było uaktualnić do wersji 4.8.1. Z punktu widzenia zwykłego użytkownika najważniejszy wniosek jest prosty: na aktualnym Windows 11 nie ma potrzeby instalowania 4.8.1 od zera.

Wersja Windows 11 Wersja .NET Framework Co zrobić
21H2 4.8 fabrycznie, możliwość aktualizacji do 4.8.1 W przypadku starej instalacji warto wykonać aktualizację systemu lub użyć instalatora 4.8.1
22H2, 23H2, 24H2, 25H2 4.8.1 Zwykle nie trzeba niczego doinstalowywać
26H1 4.8.1 Obsługa zależy od konkretnego składnika i aktualizacji systemu

Nie należy mylić tej platformy z nowoczesnym .NET 6, .NET 8 lub .NET 9. .NET Framework to starsza, windowsowa gałąź technologii, natomiast współczesny .NET działa także na Linuxie i macOS. Program napisany dla .NET Framework nie zacznie automatycznie działać po zainstalowaniu nowego .NET, ponieważ są to różne środowiska uruchomieniowe.

Jak sprawdzić zainstalowaną wersję

Najpierw sprawdzam wersję, zamiast instalować ją ponownie. To oszczędza czas i pozwala uniknąć komunikatów o tym, że nowsza wersja jest już obecna. W Windows 11 najpewniejszym źródłem informacji jest wartość Release w rejestrze systemowym, a nie sam numer wyświetlany w nazwie folderu.

Sprawdzenie przez PowerShell

Otwórz PowerShell i wykonaj poniższe polecenie:

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

Jeśli otrzymana wartość wynosi 533320 lub więcej, komputer ma .NET Framework 4.8.1 albo nowszą wersję właściwą dla danego wydania systemu. Wartość około 528449 wskazuje na .NET Framework 4.8 w starszych instalacjach Windows 11.

Przeczytaj również: var w JavaScripcie - zakres, hoisting i pułapki starego kodu

Sprawdzenie przez okno funkcji systemu

Możesz też nacisnąć Windows + R, wpisać optionalfeatures i zatwierdzić klawiszem Enter. Na liście zobaczysz między innymi składniki .NET Framework 3.5 oraz .NET Framework 4.8 Advanced Services. Ta metoda jest wygodna, ale nie zawsze pokazuje pełny numer aktualizacji 4.x.

Brak zaznaczenia przy .NET Framework 3.5 nie oznacza awarii systemu. Ten składnik jest opcjonalny i zwykle pozostaje wyłączony, dopóki aplikacja rzeczywiście go nie potrzebuje. W przypadku .NET Framework 4.x nowsza wersja zastępuje starszą, dlatego nie instaluje się kilku wydań 4.x obok siebie.

Jak zainstalować .NET Framework 4.8.1

Na aktualnym Windows 11 instalacja 4.8.1 najczęściej nie jest potrzebna. Jeżeli jednak pracujesz na starszym obrazie systemu, komputer długo nie był aktualizowany albo instalator konkretnej aplikacji zgłasza brak platformy, pobierz oficjalny Runtime 4.8.1 i uruchom go z uprawnieniami administratora.

  1. Sprawdź wersję Windows 11 w ustawieniach systemu.
  2. Zainstaluj oczekujące aktualizacje Windows Update.
  3. Uruchom instalator .NET Framework 4.8.1 jako administrator.
  4. Zaakceptuj wymagane zmiany i poczekaj na zakończenie instalacji.
  5. Uruchom ponownie komputer, jeśli instalator o to poprosi.
  6. Sprawdź ponownie wartość Release w rejestrze.

Do wyboru jest zwykle instalator internetowy oraz pakiet offline. Web Installer zajmuje mniej miejsca, ale pobiera komponenty podczas instalacji. Pakiet offline jest większy, za to przydaje się na komputerach bez stałego dostępu do internetu lub podczas wdrożeń na wielu stanowiskach.

Nie próbuj instalować starszego .NET Framework 4.x na nowszym wydaniu. Wszystkie wersje od 4.0 działają jako aktualizacje „in-place”, więc na jednym systemie obecna jest tylko jedna wersja tej gałęzi. Jeśli program wymaga 4.7.2, a komputer ma 4.8.1, zwykle nie trzeba cofać instalacji, ponieważ nowsza wersja zachowuje zgodność z aplikacjami przeznaczonymi dla wcześniejszych wydań.

Kiedy potrzebny jest .NET Framework 3.5

Najwięcej nieporozumień dotyczy właśnie wersji 3.5. Jest ona niezależna od gałęzi 4.x i może działać obok niej. Potrzebują jej głównie starsze programy napisane dla .NET Framework 1.0-3.5, a komunikat o braku składnika często pojawia się przy uruchamianiu wiekowych aplikacji biznesowych lub narzędzi administracyjnych.

Na większości wydań Windows 11 można włączyć ją przez Funkcje systemu Windows. W oknie optionalfeatures zaznacz opcję „.NET Framework 3.5 (zawiera .NET 2.0 i 3.0)” i zatwierdź instalację. System może pobrać brakujące pliki z Windows Update, dlatego potrzebne jest połączenie z internetem.

W nowszych wydaniach, w tym Windows 11 26H1, sposób instalacji .NET Framework 3.5 może być inny. Ten składnik jest wtedy dostępny jako osobny instalator przypisany do konkretnej wersji systemu, a nie jako opcjonalna funkcja Windows. Nie należy używać przypadkowego pakietu przygotowanego dla innego wydania, ponieważ instalator może odmówić działania albo zakończyć się błędem.

Nie polecam instalowania 3.5 „na zapas”. To starszy komponent przeznaczony przede wszystkim do zgodności z istniejącym oprogramowaniem, a nie do tworzenia nowych projektów. Jeśli tworzysz aplikację od podstaw, wybierz wspierany współczesny .NET albo .NET Framework 4.8.1, gdy wymaga tego konkretne środowisko firmowe.

Runtime, Developer Pack i nowoczesny .NET

Wybór właściwego pakietu zależy od tego, co chcesz zrobić. Ten podział jest prosty, ale w praktyce bywa źródłem błędów, szczególnie gdy ktoś pobiera Developer Pack do uruchomienia gotowego programu.

Pakiet Zastosowanie Kto go potrzebuje
Runtime Uruchamianie istniejących aplikacji Użytkownik końcowy i administrator
Developer Pack Budowanie aplikacji w Visual Studio i wybór konkretnego targetu Programista
Targeting Pack Udostępnienie bibliotek referencyjnych dla określonej wersji Programista pracujący ze starszym projektem
Nowoczesny .NET Tworzenie nowych aplikacji wieloplatformowych i windowsowych Programista rozpoczynający nowy projekt

Runtime nie zawiera narzędzi do kompilowania kodu. Jeśli aplikacja tylko ma się uruchomić, to właśnie ten pakiet jest właściwy. Developer Pack instaluję dopiero wtedy, gdy Visual Studio pokazuje błąd o brakujących zestawach referencyjnych albo projekt wymaga konkretnego celu, na przykład .NET Framework 4.8.1.

Przy nowych aplikacjach desktopowych warto świadomie wybrać technologię. WinForms i WPF na .NET Framework nadal mają sens przy utrzymywaniu rozbudowanego systemu firmowego, ale dla nowego projektu częściej wybrałbym współczesny .NET. Daje on nowszy cykl rozwoju, lepszą obsługę wdrożeń i możliwość łatwiejszego wykorzystania kodu poza Windowsem.

Co zrobić, gdy aplikacja nadal się nie uruchamia

Sama instalacja frameworka nie rozwiązuje każdego problemu. Jeżeli program nadal się zamyka albo wyświetla błąd, sprawdzam kolejno kilka rzeczy, zamiast ponownie uruchamiać ten sam instalator.

  • Wersja aplikacji może wymagać .NET Framework 3.5, a nie 4.8.1.
  • Program może wymagać dodatkowego pakietu Visual C++ Redistributable, który nie jest częścią .NET Framework.
  • Uszkodzone pliki systemowe można zweryfikować poleceniami sfc /scannow oraz DISM /Online /Cleanup-Image /RestoreHealth.
  • Instalator może wymagać uprawnień administratora albo ponownego uruchomienia systemu.
  • Starsza aplikacja może nie być zgodna z Windows 11 mimo obecności właściwego frameworka.

Jeżeli problem dotyczy konkretnego programu, sprawdź jego dokumentację i komunikat błędu. Nie usuwaj ręcznie folderów z katalogu Windows ani wpisów rejestru. Takie „czyszczenie” często pogarsza sytuację, a w przypadku wersji 4.x nie daje możliwości prostego powrotu do wcześniejszego wydania.

W środowisku deweloperskim częstym komunikatem jest MSB3644, informujący o braku zestawów referencyjnych dla wybranej wersji frameworka. Wtedy potrzebujesz Developer Pack albo Targeting Pack, a nie samego Runtime. Po instalacji właściwego pakietu zamknij i ponownie otwórz Visual Studio, aby środowisko odświeżyło listę dostępnych platform.

Najrozsądniejsza konfiguracja Windows 11 dla starszych aplikacji

Jeżeli korzystasz z typowych aplikacji desktopowych, zacząłbym od aktualizacji Windows 11 i sprawdzenia, czy system ma .NET Framework 4.8.1. Dopiero gdy konkretny program zgłosi brak starszego składnika, doinstalowałbym .NET Framework 3.5. Taka kolejność ogranicza liczbę komponentów i ułatwia późniejszą diagnostykę.

Dla programisty decyzja wygląda inaczej. Przy utrzymywaniu istniejącego systemu wybierz Developer Pack zgodny z projektem. Przy nowej aplikacji rozważ współczesny .NET, a klasyczny .NET Framework zostaw tam, gdzie wymagają go biblioteki, integracje z Windows lub istniejąca architektura.

Najważniejsze jest dopasowanie pakietu do zadania. Do uruchamiania programu potrzebujesz Runtime, do kompilacji Developer Pack, a do bardzo starych aplikacji często .NET Framework 3.5. W większości pozostałych przypadków Windows 11 ma już wszystko, co potrzebne do pracy z aplikacjami opartymi na .NET Framework.

FAQ - Najczęstsze pytania

Wspierane wydania Windows 11, między innymi 22H2, 23H2, 24H2 i 25H2, mają .NET Framework 4.8.1 wbudowany. Wersja 21H2 zawierała początkowo .NET Framework 4.8, ale można ją było uaktualnić do 4.8.1.

W PowerShellu odczytaj wartość Release z klucza HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full. Wynik 533320 lub wyższy oznacza .NET Framework 4.8.1 albo nowszą wersję właściwą dla danego systemu, a wartość około 528449 wskazuje na wersję 4.8.

Ten składnik jest potrzebny głównie starszym aplikacjom przeznaczonym dla .NET Framework 1.0-3.5. Zwykle można go włączyć w oknie Funkcje systemu Windows, zaznaczając opcję .NET Framework 3.5, ale w Windows 11 26H1 może być wymagany osobny instalator dopasowany do konkretnego wydania systemu.

Runtime służy do uruchamiania gotowych aplikacji i wystarcza użytkownikowi końcowemu. Developer Pack jest potrzebny programiście do budowania aplikacji w Visual Studio oraz do uzyskania bibliotek referencyjnych dla konkretnej wersji frameworka.

Oceń artykuł

Ocena: 0.00 Liczba głosów: 0

Tagi

.net framework
windows 11
powershell
runtime
developer pack
Autor Przemysław Kwiatkowski
Przemysław Kwiatkowski
Jestem Przemysław i od 15 lat zajmuję się programowaniem .NET, chmurą Azure oraz sztuczną inteligencją. Moja przygoda z tymi technologiami zaczęła się od fascynacji możliwościami, jakie dają, a z czasem przerodziła się w pasję do tworzenia rozwiązań, które realnie wpływają na pracę i życie ludzi. Na kursdotnet.pl staram się dzielić się swoją wiedzą w sposób przystępny, tłumacząc złożone zagadnienia i pomagając zrozumieć, jak te dynamicznie rozwijające się obszary IT mogą być wykorzystane w praktyce. Dokładam wszelkich starań, aby prezentowane przeze mnie materiały były rzetelne, aktualne i oparte na sprawdzonych źródłach, a także aby uporządkować wiedzę w sposób ułatwiający jej przyswojenie.

Udostępnij artykuł

Napisz komentarz