如何解决Visual Studio中Error LNK1107文件无效或损坏问题
解决Error LNK1107:文件无效或损坏的方案
- 彻底清理编译缓存文件
不管用Visual Studio还是其他编译工具,先执行清理操作:- VS里点击菜单
项目→清理解决方案,之后手动删除项目目录下的obj、bin、ipch这类生成文件夹,确保没有残留的损坏中间文件。
- VS里点击菜单
- 检查第三方库文件完整性
你用到的SmarAct、Madlib相关库文件(.lib/.dll)可能本身已损坏:- 从官方渠道重新下载对应版本的API库,替换项目中引用的旧文件;
- 确认库文件的架构(x86/x64)和你的编译目标平台一致,跨架构引用也可能触发这类错误。
- 重置项目链接器配置
回滚配置后错误仍存在,可能是配置文件残留损坏:- 打开项目属性,进入
链接器→输入,清空附加依赖项,再重新手动添加需要的库文件; - 检查
链接器→常规里的附加库目录,确认路径指向正确的库文件所在文件夹,没有指向无效或损坏的文件路径。
- 打开项目属性,进入
- 重建项目结构
如果上述操作无效,新建一个空白项目:- 逐步复制原项目的源代码文件到新项目;
- 逐个添加头文件包含路径、库依赖,每添加一项就编译一次,定位是否是某个特定依赖导致的问题。
- 修复编译工具组件
若使用Visual Studio,链接器本身可能损坏:- 打开Visual Studio Installer,选择
修改→单个组件,找到对应的编译器和链接器组件,点击修改进行修复。
- 打开Visual Studio Installer,选择
内容的提问来源于stack exchange,提问作者ATSlooking4things
相关产品推荐
相关产品推荐

