安装Visual Studio 2017社区版SSDT失败:递归太深错误求助
解决VS2017社区版SSDT安装报错"Recursion too deep; stack overflowed 0x800703E9"的方案
我来帮你搞定这个安装失败的问题——这个递归溢出的错误在已有新版VS的环境下安装旧版SSDT时确实挺常见的,结合你的情况,试试下面这些实操步骤:
清理VS安装缓存
已有新版VS的情况下,缓存文件冲突很可能是罪魁祸首。右键以管理员身份打开命令提示符,运行以下命令:"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\resources\app\layout\InstallCleanup.exe"工具启动后,选择清理与VS2017、SSDT相关的损坏安装组件,放心,这不会删除你的项目文件或已安装的新版VS。
调整虚拟内存大小
4GB物理内存可能不足以支撑安装过程的峰值内存需求。右键「此电脑」→「属性」→「高级系统设置」→「高级」→「性能设置」→「高级」→「虚拟内存」→「更改」:- 取消勾选「自动管理所有驱动器的分页文件大小」
- 选中系统盘(一般是C盘),设置「自定义大小」,初始值设为4096MB,最大值设为8192MB
- 点击「设置」后重启电脑,再尝试安装SSDT
使用离线安装包单独安装
在线安装容易受网络波动或现有VS环境干扰。直接下载VS2017 SSDT的离线安装包,运行时选择「自定义安装」,只勾选SSDT相关组件(比如SQL Server数据工具、数据库项目模板),避开和已安装新版VS重复的选项,减少冲突概率。修复.NET Framework与系统文件
这个错误偶尔也和.NET组件损坏有关:- 打开「控制面板」→「程序和功能」→「启用或关闭Windows功能」,找到.NET Framework 4.7及以上版本,先禁用再重新启用
- 以管理员身份打开命令提示符,依次运行以下命令修复系统文件:
DISM /Online /Cleanup-Image /RestoreHealth sfc /scannow
完成后重启电脑再尝试安装。
避开组件冲突的自定义安装
如果用在线安装程序,进入安装界面后选择「自定义安装」,仔细取消所有和已安装的最新版VS重复的组件,只保留SSDT必需的选项,避免新旧组件互相干扰。
内容的提问来源于stack exchange,提问作者billpennock
相关产品推荐
相关产品推荐

