{"id":219331,"date":"2024-03-21T15:02:48","date_gmt":"2024-03-21T15:02:48","guid":{"rendered":"https:\/\/www.ninjaone.com\/?post_type=script_hub&#038;p=219331"},"modified":"2024-03-28T14:58:24","modified_gmt":"2024-03-28T14:58:24","slug":"installation-von-net-framework-4-powershell","status":"publish","type":"script_hub","link":"https:\/\/www.ninjaone.com\/de\/script-hub\/installation-von-net-framework-4-powershell\/","title":{"rendered":"So installieren Sie .NET Framework 4 mit PowerShell"},"content":{"rendered":"<p>Da sich der IT-Betrieb st\u00e4ndig weiterentwickelt und immer komplizierter wird, hat sich die Automatisierung als Eckpfeiler etabliert. Die Bedeutung der Skripterstellung, insbesondere mit PowerShell, ist in modernen IT-Infrastrukturen nicht von der Hand zu weisen. PowerShell ist mit seiner F\u00e4higkeit, Aufgaben zu automatisieren und zu rationalisieren, unverzichtbar geworden. Heute besprechen wir ein spezielles PowerShell-Skript zur <strong>Installation von .NET Framework 4<\/strong>, einer wichtigen Grundlage f\u00fcr viele Anwendungen.<\/p>\n<h2>Hintergrund<\/h2>\n<p>Das .NET Framework von Microsoft fungiert als Software-Entwicklungsplattform, die Dienste, Bibliotheken und Werkzeuge bereitstellt, die f\u00fcr die Entwicklung und Ausf\u00fchrung einer Vielzahl von Anwendungen erforderlich sind. F\u00fcr IT-Fachleute und <a href=\"https:\/\/www.ninjaone.com\/de\/was-ist-ein-msp\/\">Managed Service Provider (MSPs)<\/a> ist es von gr\u00f6\u00dfter Bedeutung, \u00fcber eine effiziente Methode zur Installation dieses Frameworks zu verf\u00fcgen, um sicherzustellen, dass die Anwendungen reibungslos funktionieren. Unser PowerShell-Skript erf\u00fcllt diesen Zweck mit zus\u00e4tzlichen Funktionen, wie z. B. der M\u00f6glichkeit, von einer Offline-Quelle zu installieren.<\/p>\n<h2>Das Skript<\/h2>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"powershell\">#Requires -Version 5.1\r\n\r\n&lt;#\r\n.SYNOPSIS\r\n    Install NetFx4 features(.NET 4.x), with the option to install from an offline source.\r\n.DESCRIPTION\r\n    Install NetFx4 features(.NET 4.x), with the option to install from an offline source.\r\n    An offline source can be an attached CD\/DVD image of the OS's installer.\r\n.EXAMPLE\r\n     No parameters needed.\r\n    Install NetFx4 features from Local Install\/Windows Update\/WSUS.\r\n.EXAMPLE\r\n     -OfflineSource \"D:sourcessxs\"\r\n    Install NetFx4 features from a specified source.\r\n.EXAMPLE\r\n    PS C:&gt; Install-DotNet4.ps1\r\n    Install NetFx4 features from Local Install\/Windows Update\/WSUS.\r\n.EXAMPLE\r\n    PS C:&gt; Install-DotNet4.ps1 -OfflineSource \"D:sourcessxs\"\r\n    Install NetFx4 features from a specified source.\r\n.OUTPUTS\r\n    None\r\n.NOTES\r\n    General notes\r\n    Release Notes:\r\n    Initial Release\r\nBy using this script, you indicate your acceptance of the following legal terms as well as our Terms of Use at https:\/\/www.ninjaone.com\/terms-of-use.\r\n    Ownership Rights: NinjaOne owns and will continue to own all right, title, and interest in and to the script (including the copyright). NinjaOne is giving you a limited license to use the script in accordance with these legal terms. \r\n    Use Limitation: You may only use the script for your legitimate personal or internal business purposes, and you may not share the script with another party. \r\n    Republication Prohibition: Under no circumstances are you permitted to re-publish the script in any script library or website belonging to or under the control of any other software provider. \r\n    Warranty Disclaimer: The script is provided \u201cas is\u201d and \u201cas available\u201d, without warranty of any kind. NinjaOne makes no promise or guarantee that the script will be free from defects or that it will meet your specific needs or expectations. \r\n    Assumption of Risk: Your use of the script is at your own risk. You acknowledge that there are certain inherent risks in using the script, and you understand and assume each of those risks. \r\n    Waiver and Release: You will not hold NinjaOne responsible for any adverse or unintended consequences resulting from your use of the script, and you waive any legal or equitable rights or remedies you may have against NinjaOne relating to your use of the script. \r\n    EULA: If you are a NinjaOne customer, your use of the script is subject to the End User License Agreement applicable to you (EULA).\r\n#&gt;\r\n\r\n[CmdletBinding()]\r\nparam (\r\n    [Parameter()]\r\n    [String]\r\n    $OfflineSource\r\n)\r\n\r\nbegin {\r\n    $OSVersion = [System.Environment]::OSVersion.Version\r\n}\r\nprocess {\r\n    if ($OSVersion -gt [Version]::new(6, 2)) {\r\n        # Windows 8.1\/Server 2012 R2 or greater\r\n        $Packages = dism \/Online \/Get-Features \/Format:Table\r\n        if ($OfflineSource) {\r\n            # Install .NET 3 and 4\r\n            if ((Test-Path -Path $OfflineSource -ErrorAction SilentlyContinue)) {\r\n                if ($($Packages | Select-String -Pattern \"NetFx4\" | Select-Object -First 1) -like \"Disabled\") {\r\n                    dism \/Online \/Enable-Feature \/FeatureName:NetFx4 \/All \/Source:$OfflineSource\r\n                }\r\n            }\r\n            else {\r\n                Write-Error \"Path to $OfflineSource doesn't exist.\"\r\n            }\r\n        }\r\n        else {\r\n            if ($($Packages | Select-String -Pattern \"NetFx4\" | Select-Object -First 1) -like \"Disabled\") {\r\n                dism \/Online \/Enable-Feature \/FeatureName:NetFx4 \/All\r\n            }\r\n        }\r\n    }\r\n    else {\r\n        # Windows 8\/Server 2012 or lesser\r\n        # This requires copying the installer to the target in some way; either by downloading or shared folder as examples.\r\n        Write-Output \"More Info: https:\/\/ninjarmm.zendesk.com\/hc\/en-us\/articles\/360043992771-How-to-install-software-outside-of-3rd-Party-Patching\"\r\n        Write-Error \"Use the Install Application script to install dotNetFx40_Full_x86_x64.exe\"\r\n\r\n        # The code below is an example of downloading, but isn't guarantied to work 100%.\r\n\r\n        # Invoke-WebRequest -Uri \"http:\/\/download.microsoft.com\/download\/9\/5\/A\/95A9616B-7A37-4AF6-BC36-D6EA96C8DAAE\/dotNetFx40_Full_x86_x64.exe\" -OutFile \"dotNetFx40_Full_x86_x64.exe\"\r\n        # dotNetFx40_Full_x86_x64.exe \/q: http:\/\/download.microsoft.com\/download\/9\/5\/A\/95A9616B-7A37-4AF6-BC36-D6EA96C8DAAE\/dotNetFx40_Full_x86_x64.exe\r\n        # Remove-Item -Path \"dotNetFx40_Full_x86_x64.exe\"\r\n    }\r\n}\r\nend {}<\/pre>\n<p>&nbsp;<\/p>\n\n<div class=\"in-context-cta\"><p>Zugriff auf \u00fcber 300 Skripte im NinjaOne Dojo<\/p>\n<p><a href=\"https:\/\/www.ninjaone.com\/de\/kostenlosetestversionformular\/\">Zugang erhalten<\/a><\/p>\n<\/div>\n<h2>Detailansicht<\/h2>\n<p>Schauen wir uns nun die Kernkomponenten dieses Skripts an:<\/p>\n<ul>\n<li><strong>Parameter:<\/strong> Das Skript beginnt mit dem Einrichten eines Parameters <strong>$OfflineSource<\/strong>. Falls vorhanden, k\u00f6nnen Benutzer das Framework von einer anderen als der Standardquelle (z. B. einer lokalen Quelle) installieren.<\/li>\n<li><strong>Umgebungspr\u00fcfung:<\/strong> Es ruft die aktuelle Version des Betriebssystems ab<\/li>\n<li><strong>Prozess:<\/strong><\/li>\n<li>Wenn die Betriebssystemversion gr\u00f6\u00dfer als Windows 8.1\/Server 2012 R2 ist, wird nach verf\u00fcgbaren Paketen gesucht.<\/li>\n<li>Abh\u00e4ngig von der <strong>$OfflineSource<\/strong> wird entweder die lokale Quelle oder die Standardquelle f\u00fcr die Installation des Frameworks verwendet.<\/li>\n<li>F\u00fcr Betriebssystemversionen unter Windows 8\/Server 2012 bietet das Skript einen Leitfaden f\u00fcr die Installation und schl\u00e4gt eine manuelle Download-Methode vor.<\/li>\n<\/ul>\n<h2>Potenzielle Anwendungsf\u00e4lle<\/h2>\n<p><strong>Szenario<\/strong>: Stellen Sie sich James vor, einen IT-Administrator f\u00fcr ein mittelst\u00e4ndisches Unternehmen. Das Unternehmen migriert einige \u00e4ltere Anwendungen in eine neuere Umgebung und ben\u00f6tigt daf\u00fcr .NET Framework 4 auf allen Servern. Einige Server haben einen eingeschr\u00e4nkten Online-Zugang, so dass eine Offline-Installation erforderlich ist. Mit diesem Skript kann James die Installation auf mehreren Servern optimieren, was Zeit spart und Einheitlichkeit gew\u00e4hrleistet.<\/p>\n<h2>Vergleiche<\/h2>\n<p>Die herk\u00f6mmliche Installation von .NET Framework kann das manuelle Herunterladen des Installationsprogramms und das Durchlaufen des Setups oder die Verwendung der Windows-Funktionsinstallation umfassen. Unser Skript bietet Vorteile:<\/p>\n<ul>\n<li><strong>Automatisierung:<\/strong> Planen Sie die Bereitstellung auf mehreren Servern oder f\u00fchren Sie sie sofort durch.<\/li>\n<li><strong>Flexibilit\u00e4t:<\/strong> W\u00e4hlen Sie zwischen Online- und Offline-Installation<\/li>\n<li><strong>Fehler-Pr\u00fcfungen:<\/strong>Bietet spezifisches Feedback, wenn etwas nicht wie geplant l\u00e4uft.<\/li>\n<\/ul>\n<h2>FAQs<\/h2>\n<ul>\n<li><strong>Kann ich dieses Skript auch f\u00fcr andere Versionen als .NET Framework 4 verwenden?<\/strong><br \/>\nDieses Skript wurde speziell f\u00fcr .NET Framework 4 entwickelt. F\u00fcr andere Versionen m\u00fcssten \u00c4nderungen vorgenommen werden.<\/li>\n<li><strong>Wie kann ich sicherstellen, dass meine Offline-Quelle korrekt ist?<\/strong><br \/>\nStellen Sie sicher, dass der unter $OfflineSource angegebene Pfad auf die richtigen Installationsdateien verweist.<\/li>\n<\/ul>\n<h2>Auswirkungen<\/h2>\n<p>Bei der Automatisierung von Installationen, insbesondere bei Skripten, die Systemeinstellungen \u00e4ndern, besteht ein innewohnendes Risiko. Eine fehlerhafte Installation kann zu Schwachstellen im System f\u00fchren. Es ist wichtig, das Skript gr\u00fcndlich zu verstehen und es vor dem breiten Einsatz in einer kontrollierten Umgebung zu testen.<\/p>\n<h2>Empfehlungen<\/h2>\n<ul>\n<li>Erstellen Sie immer eine Sicherungskopie Ihres Systems, bevor Sie Skripte ausf\u00fchren, die Systemkonfigurationen \u00e4ndern.<\/li>\n<li>Wenn Sie eine Offline-Quelle verwenden, achten Sie darauf, dass sie von einem vertrauensw\u00fcrdigen und seri\u00f6sen Anbieter stammt.<\/li>\n<li>Aktualisieren Sie das Skript regelm\u00e4\u00dfig, um es an neuere Betriebssystemversionen oder Updates f\u00fcr das .NET Framework anzupassen.<\/li>\n<\/ul>\n<h2>Abschlie\u00dfende \u00dcberlegungen<\/h2>\n<p>In der heutigen IT-Landschaft ist der Einsatz von Tools wie NinjaOne unerl\u00e4sslich geworden. Wie wir bei diesem .NET-Installationsskript gesehen haben, kann die Automatisierung komplizierte Aufgaben vereinfachen. Die <a href=\"https:\/\/www.ninjaone.com\/de\/\">umfassende Plattform<\/a> von NinjaOne kann bei der effektiven Bereitstellung und Verwaltung solcher Skripte helfen und so sicherstellen, dass der IT-Betrieb reibungslos und effizient bleibt.<\/p>\n","protected":false},"author":35,"featured_media":144022,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_relevanssi_hide_post":"","_relevanssi_hide_content":"","_relevanssi_pin_for_all":"","_relevanssi_pin_keywords":"","_relevanssi_unpin_keywords":"","_relevanssi_related_keywords":"","_relevanssi_related_include_ids":"","_relevanssi_related_exclude_ids":"","_relevanssi_related_no_append":"","_relevanssi_related_not_related":"","_relevanssi_related_posts":"","_relevanssi_noindex_reason":"","_lmt_disableupdate":"no","_lmt_disable":""},"operating_system":[4212],"use_cases":[4307],"class_list":["post-219331","script_hub","type-script_hub","status-publish","has-post-thumbnail","hentry","script_hub_category-windows"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/script_hub\/219331","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/script_hub"}],"about":[{"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/types\/script_hub"}],"author":[{"embeddable":true,"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/users\/35"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/comments?post=219331"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/media\/144022"}],"wp:attachment":[{"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/media?parent=219331"}],"wp:term":[{"taxonomy":"script_hub_category","embeddable":true,"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/operating_system?post=219331"},{"taxonomy":"use_cases","embeddable":true,"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/use_cases?post=219331"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}