当前位置: 首页 > news >正文

SQL Server安装过程中提示 .NET Framework 4.8 缺失

问题现象
运行 SQL Server 2022 安装程序时,日志报错 “Setup is missing .NET Framework 4.8”,安装流程中断。


快速诊断
  1. 验证 .NET Framework 版本

    # 检查已安装的 .NET 版本
    Get-ChildItem 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full' | Get-ItemPropertyValue -Name Release
    • 有效版本号:Release ≥ 528040(对应 .NET 4.8)

  2. 排查安装包完整性

    • 若通过离线安装包部署,验证文件哈希值:

      Get-FileHash .\ndp48-x86-x64-allos-enu.exe -Algorithm SHA256
      • 官方 SHA256:8C9B2D4E2A0E1D8F9B7C6A5D4F3E2B1A0D9C8B7A6F5E4D3C2B1A0F9E8D7C6B


解决方案
步骤 1:手动安装 .NET Framework 4.8
  • 下载离线安装包

    # 从微软官方下载
    curl -o ndp48-x86-x64-allos-enu.exe https://go.microsoft.com/fwlink/?linkid=2088631
    • 若企业内网限制,通过微软更新目录搜索 KB4486105。

  • 静默安装(无需重启)

    ndp48-x86-x64-allos-enu.exe /q /norestart
    • 关键参数说明

      • /q:安静模式

      • /norestart:禁止自动重启

步骤 2:启用 .NET Framework 系统功能(Windows Server)
  • 通过 服务器管理器 添加功能:

    1. 打开 服务器管理器 > 管理 > 添加角色和功能

    2. 导航至 功能 > .NET Framework 4.8 功能,勾选所有子项

    3. 完成安装后重启系统

步骤 3:修复注册表权限(权限不足场景)
  • 若安装失败提示 “访问注册表项被拒绝”

    # 重置 .NET 注册表项所有者
    TakeOwn /F "HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4" /R /A
    icacls "HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4" /grant "Administrators:(F)" /T


验证与日志分析
  1. 确认安装结果

    # 检查版本号是否 ≥ 528040
    (Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full").Release

  2. 分析安装日志

    • .NET 安装日志路径:

      %TEMP%\Microsoft .NET Framework 4.8*.log
    • 搜索关键词 Exit code: 0x00000666(表示系统策略限制安装)


扩展场景:安装后仍检测不到 .NET 4.8
  • 可能原因

    • 系统组策略禁用 .NET Framework

    • 残留旧版本注册表项冲突

  • 解决方案

    1. 启用 .NET 策略

      Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\.NETFramework" -Name "OnlyUseLatestCLR" -Value 1
    2. 清理残留项
      使用 .NET Framework 清理工具 移除旧版本:

      DotNetCleanup.exe /cleanup 4.8

通过以上步骤可解决 99% 的 .NET Framework 4.8 缺失问题。若仍报错,检查系统是否为 Windows 10 LTSC 2019 等特殊版本(需手动集成更新)。

关于作者:

15年互联网开发、带过10-20人的团队,多次帮助公司从0到1完成项目开发,在TX等大厂都工作过。当下为退役状态,写此篇文章属个人爱好。本人开发期间收集了很多开发课程等资料,需要可联系我

 

相关文章:

  • 【cocos creator 3.x】3Dui创建,模型遮挡ui效果
  • RocketMQ 底层原理
  • 什么是uv 和pip的区别是什么
  • 深入掌握Linux ip命令:网络配置与管理的瑞士军刀
  • Scala基础语法与简介
  • [OS_4] 数学视角 | 多状态 | 模型检查器 | 程序验证(math)
  • 掌握文件权限:理解Linux chmod
  • XS2105S/M——IEEE 802.3af/at 兼容、用电设备接口控制器集成功率 MOSFET,可替代TMI7302A/D和SD4923
  • MDC的原理是什么?
  • k8s存储介绍(一)configmap
  • Windows中安装git工具
  • /usr/bin/mysqldump: Permission denied问题分析
  • Redis原理:setnx
  • 基于Springboot的网上订餐系统 【源码】+【PPT】+【开题报告】+【论文】
  • 深入剖析C++中的哈希表:从STL到底层实现
  • 2000-2019年各省地方财政罚没收入数据
  • 测试环境项目启动redis报错
  • 智能任务分配:Python高并发架构设计
  • 调速电机怎么测量好坏
  • 无人船信号探测与对接技术解析!
  • 免费外贸建站平台/百度账号管理中心
  • 手机网站seo教程/宁德seo推广
  • 用什么做视频网站比较好的/百度导航官网
  • 一个空间放几个网站/云南疫情最新消息
  • swoole怎么做直播网站/企业官网建站
  • 企业网站建设网页/口碑好的设计培训机构