VS Code中C++编译生成DLL遇LNK1104错误求解决方案
解决LNK1104无法打开指定DLL文件的问题
针对你遇到的LNK1104错误,这里提供几个直接可行的排查方向:
检查目标目录权限
目标路径C:\Program Files\Itasca\ItascaSoftware900\exe64\plugins\cmodel\属于系统受保护目录,普通用户没有写入权限。解决方法:- 右键Visual Studio Code,选择「以管理员身份运行」后重新尝试重建项目;
- 临时修改项目的输出目录,将DLL先生成到用户有权限的路径(比如
C:\Users\你的用户名\Desktop\TempDLL),生成成功后再手动复制到目标插件目录。
排查文件占用情况
报错的cmodelTUBSsalt_permd009.dll可能正在被Itasca软件或其他进程占用:- 关闭所有Itasca相关程序,打开任务管理器检查是否有残留的相关进程,结束后重新编译;
- 可以用Process Explorer工具定位到占用该DLL的具体进程,强制结束后再操作。
验证项目链接器配置
打开项目的TUBSsalt_permd.vcxproj文件,检查以下配置:- 确认
<OutDir>和<TargetPath>节点的路径是否正确,有没有拼写错误(比如大小写、路径分隔符); - 检查链接器的「输入」设置,确认没有引用不存在的依赖DLL文件。
- 确认
清理旧编译文件
执行「清理解决方案」操作,删除项目Debug/Release目录下的所有旧文件,然后重新生成项目,避免旧文件残留导致的冲突。
内容的提问来源于stack exchange,提问作者Umer Fiaz
相关产品推荐
相关产品推荐

