首页
学习
活动
专区
圈层
工具
发布

踩坑实录:安装软件时遇到 “PowerShell 2.0 已弃用”?一篇教你搞定

不知道大家有没有遇到过这种情况:兴致勃勃地在新系统上安装某些软件时,刚点开安装程序,Windows 就弹出了这么一个警告框 ——

问题到底出在哪?

这个 “程序兼容性助手”的警告,本质上是一个典型的新旧系统兼容性断层问题。解决方法在文章末尾!

旧软件的 “执念”

你正在安装的 SQL Server(通常是 2008 R2、2012、2014 这类老版本)或者依赖于SQL Server的软件时,其安装程序在当年开发时,依赖于系统自带的 PowerShell 2.0 组件。

新系统的 “断舍离”

为了安全,微软早已宣布弃用 PowerShell 2.0,并在较新的 Windows 11(尤其是 24H2/25H2 版本)中默认移除了该组件。

矛盾点

安装程序找不到它需要的 “老朋友” PowerShell 2.0,于是兼容性助手就跳出来给你报了这个警。

三种解决方案,按需取用

下面这三种方法,按推荐优先级排序,从 “治标治本” 到 “临时应急”,你可以根据自己的情况选择。

方案一:升级到新版本 SQL Server(最推荐,安全又省心)

既然 PowerShell 2.0 都被微软弃用了,那为什么还要死守着依赖它的老版本 SQL Server 呢?

直接下载并安装SQL Server 2019、2022这类较新版本,它们早已全面兼容 PowerShell 5.1/7.x,能完美适配 Win10/Win11 新系统。

优势:无需折腾系统组件,安全、稳定、性能更好,也能避免后续更多兼容性问题。

方案二:手动启用 PowerShell 2.0(适合必须用老版本的场景)

如果因为依赖于旧SQL server的软件安装需求,你必须安装 SQL Server 2008 R2/2014 这类老版本,那就只能把 PowerShell 2.0 “请回来” 了。

方法 A:通过 “Windows 功能” 安装

按下Win+R,输入optionalfeatures,回车打开 “Windows 功能” 窗口。

在列表里找到“旧版组件”,展开后勾选“PowerShell 2.0”

点击 “确定”,等待系统安装完成后重启电脑,再重新运行 SQL Server 安装程序即可。

方法 B:用 DISM 命令强制安装(功能里找不到时用)

如果你的系统版本太新,功能列表里已经没有 PowerShell 2.0 的选项,可以用管理员权限打开 CMD 或 PowerShell,执行以下命令:

dism /Online /Enable-Feature /FeatureName:MicrosoftWindowsPowerShellV2Root /All

执行完成后,重启电脑再试。

安全提示:PowerShell 2.0 本身存在大量安全漏洞,安装完成后,建议在 SQL Server 部署完毕、确认一切正常后,再次禁用该组件,避免留下安全隐患。

方案三:使用微软官方临时补丁包(终极应急方案)建议采用此方案

对于 Win11 25H2 这类彻底移除了 PowerShell 2.0 的版本,上面两种方法可能会失败。这时可以试试微软提供的临时解决方案:

下载官方的ps2DLC.zip补丁包(点击警告框里的 “Learn more” 可直达下载页面)。

解压文件,以管理员身份运行其中的安装脚本,按提示完成 PowerShell 2.0 的部署。

安装完成后重启电脑,再运行 SQL Server 安装程序。

如果大家觉得上面的操作比较复杂,我已帮大家做好了脚本文件,一键安装,欢迎大家下载

避坑小贴士

优先用新版本:除非是维护老旧系统,否则强烈建议直接用 SQL Server 2019/2022,能省掉无数兼容性麻烦。

管理员权限:所有安装、命令行操作,都请务必以 “管理员身份” 运行,避免权限不足导致的失败。

安全第一:PowerShell 2.0 只是临时救急,用完记得关掉,别给电脑留后门。

最后想说

这种 “老软件依赖旧组件” 的坑,其实在 IT 圈里太常见了。与其死磕老版本,不如顺势升级,既能解决问题,也能让自己的系统更安全。

如果你在操作过程中遇到了新的报错,或者不确定该选哪个方案,可以把具体情况告诉我,我帮你一起分析~

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OigFFk5T66yMM-sHvU1hakTw0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。
领券