VS2019远程开发环境中解决方案所有项目目标扩展名异常变为.pyd求助
全局配置异常导致所有项目输出扩展名统一为
.pyd的修复方案 核心逻辑
该问题与项目本身配置、VS安装文件无关,重装VS不会修复的原因是:异常配置存在于用户级目录、注册表或环境变量中,不会被VS安装程序覆盖清理。
排查修复步骤
- 检查用户全局MSBuild属性表
属性表路径:%LOCALAPPDATA%\Microsoft\MSBuild\v4.0\
打开目录内的Microsoft.Cpp.Default.props、Microsoft.Cpp.$(Platform).user.props文件,搜索TargetExt关键字,删除所有值为.pyd的对应配置行;也可直接备份后删除整个props文件,重启VS后会自动生成默认配置。 - 排查注册表篡改项
常见为CPython开发环境、Anaconda的VS集成配置修改了项目默认输出后缀,对比正常工作站的同路径注册表项,检查HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\$(VS内部版本号)\C++下的OutputExtension键值,删除异常的.pyd配置即可。 - 检查环境变量覆盖
遍历当前用户、系统级环境变量列表,若存在自定义TargetExt环境变量,MSBuild会优先读取该值覆盖所有项目配置,删除该变量后重启VS生效。
快速验证
手动修改单个项目属性页→常规→高级→目标文件扩展名,将
.pyd改为对应类型的默认值(可执行程序.exe、动态库.dll、静态库.lib),重新构建后输出正常,即可确认是全局配置被篡改。
内容的提问来源于stack exchange,提问作者Hossein
相关产品推荐
相关产品推荐

