无法安装 .NET Framework 3.5 -安装角色或功能失败,找不到源文件

新服务器搭建环境总是有很多问题。在安装MS SQL SERVER 2014 EXPRESS的时候提示无法安装成功,需要先安装 .NET Framework 3.5!但是新问题又来了,使用Windows Server 2012服务器管理器的添加角色和功能无法安装.NET Framework 3.5,提示错误:

安装一个或多个角色、角色服务或功能失败。找不到源文件。请再次尝试在新的“添加角色和功能”向导会话中安装角色、角色服务或功能,然后在向导的“确认”页中单击“指定备用源路径”以指定安装所需的源文件的有效位置。目标服务器的计算机帐户必须能够访问该位置。

.NET Framework 3.5安装失败截图

PS:本文是继上一篇文章:《Windows Server 2012无法打开运行空间池-服务器管理器WinRM插件可能已损坏或丢失》后续,在我安装好IIS后遇到的无法安装.NET 3.5的新问题。其实在安装IIS过程中如果勾选.NET 3.5也会出现"安装角色和功能失败-找不到源文件"这个错误,只是我当时为了暂时避开了这个错误而特意没有勾选安装。可惜后面安装数据库的时候发现必须要先安装.NET 3.5,终究无法避免这个错误。

这个问题的解决办法我也在网上找了很多方法,其中我比较推荐的是用PowerShell进行安装,通过PowerShell输入安装命令/脚本来安装.NET Framework 3.5。具体步骤如下:

一、首先依次打开 开始菜单》管理工具/Windows 系统》Windows PowerShell(根据系统版本不同,菜单位置也有所影响),然后右键打开菜单选项,选择以管理员身份运行。

打开PowerShell

当然你也可以尝试WIN+R,在运行对话框输入PowerShell打开,不过建议还是用管理员身份运行比较保险,可以试下。

运行PowerShell

二、打开PowerShell后,直接复制下面安装.NET Framework 3.5的脚本命令,记住全部复制,然后直接全部粘贴(不要一行一行复制粘贴)



Set-ItemProperty -Path 'HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU' -Name UseWUServer -Value 0
Restart-Service -Name wuauserv
Install-WindowsFeature Net-Framework-Core
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU' -Name UseWUServer -Value 1
Restart-Service -Name wuauserv

输入命令后会显示安装进度,最终结果如下图所示安装成功:

成功安装.NET 3.5

网上的其他方法也可尝试下,有的是通过指定备用源路径,有的是修改组策略,还有的通过开启虚拟内存来解决,但是我本人是通过PowerShell成功安装了。另外也可以参考下面的办法:

 

问题描述

本文介绍如下两种问题现象。

 

现象一:无法安装.NET Framework

在Windows Server 2012 R2、Windows Server 2016或Windows Server 2019系统中安装.NET Framework 3.5.1时报如下错误。

 

现象二:无法安装语言包

在控制面板切换语言或者在Windows Update中查询语言选项时,无法选择或者安装语言包。

 

问题原因

由于Windows实例默认采用WSUS(Windows Server Update Services)获取更新源,导致.NET Framework和语言包安装文件缺失。遂报错找不到源文件或者无法安装语言包。

 

解决方案

解决方法如下。

  1. 从开始菜单中找到PowerShell,右键单击选择 以管理员身份运行
  2. 执行如下命令修改注册表,将更新源设置为Windows Update。
    Set-ItemProperty -Path 'HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU' -Name UseWUServer -Value 0
    Restart-Service -Name wuauserv
  3. 执行如下命令,通过PowerShell安装.NET Framework。
    Install-WindowsFeature Net-Framework-Core

    注:您也可以继续在Server Manager中安装.NET Framework,或者在控制台面板中安装语言包。

  4. 安装完.NET Framework和语言包后,可以参考如下命令,将Windows更新源修改回WSUS。

    注:此为可选步骤,您也可以继续使用Windows Update作为更新源。

    Set-ItemProperty -Path 'HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU' -Name UseWUServer -Value 1
    Restart-Service -Name wuauserv

 

更多信息

更多有关无法安装.NET Framework的信息,参考如下内容。

  • Windows Server 2012与Windows Server 2016内存占用较高,安装其他应用程序使内存消耗更高,可能会导致内存不足引起安装.NET Framework失败,因此建议增加物理内存,如果是I/O优化实例,可以酌情开启系统虚拟内存
  • 如果安装.NET Framework时报0x800f081f的错误,请检查公网网络是否正常。如果正常,可能是连接Windows Update服务器链路不稳定导致更新失败,建议更换时间段重试。

发表评论

电子邮件地址不会被公开。 必填项已用*标注