我试图测试我们的产品以确保它们与 Windows Server 2016 兼容。在一些测试过程中,我错误地认为我可以简单地将 .NET 框架从 4.6“降级”到 4。所以我从角色和 IIS 中删除了 .NET 4.6。
现在,我无法使用安装程序重新安装它(因为它是操作系统的一部分,所以它要求我从角色和功能中启用它)。而且我无法启动服务器管理器(安装角色和功能),因为它至少需要 .Net 4。
所以我陷入困境。除了重新安装操作系统,我还有其他选择吗?我花了很多时间测试这个系统,如果可能的话,我宁愿不这样做。
更新:我已经尝试过了.NET 安装程序对于旧版 Windows 操作系统,但它没有帮助。
答案1
尝试使用 DISM 脱机安装 .NET就像在这个 .NET 3.5 的例子中一样:
键入以下命令:
“Dism /online /enable-feature /featurename:Netfx3 /source:D:\Sources\sxs”
然后按 Enter。这需要一段时间,当该过程完成后,关闭 PowerShell Windows,然后检查必须成功安装的确切 Windows 功能。
感谢@JackLock 的评论:
因此,根据您的建议,我启用了名为“NetFx4”的功能。由于它已经安装,我不需要提供它的源代码。所以我的命令看起来像
Dism /online /Enable-Feature /FeatureName:NetFx4 /All
答案2
谢谢 duDE 和 JackLock。你们两个的回答都帮助我解决了这个问题。
我的问题: 在 Windows Server 2016 上,当我尝试修复 IIS 的一些问题时,.NET Framework 4.6 被无意中从我的系统中卸载。我使用“服务器管理器”>“删除角色和功能”将其删除。
结果,Power Shell、服务器管理器和事件查看器都无法正常工作。因此,我从以下网址下载并安装了最新的 .NET Framework 4.7 离线版本:微软使用安装程序。但是,单击安装程序进行安装时,问题并没有得到解决。
解决方案 为了解决这个问题,我必须使用“/all”开关从命令行安装它。我将安装程序解压到一个文件夹中,下面是我用来安装它的命令。引号中的最后一个参数是安装程序的路径,需要根据安装程序解压的位置进行修改:
Dism /online /enable-feature /all /featurename:Netfx4 /source:"E:\t\NDP47-KB3186497-x86-x64-AllOS-ENU (Microsoft .NET Framework 4.7)"