为何Visual Studio 2022在Release模式下编译C++代码会链接调试库?
解决Release模式下依赖MSVCP140D.dll的问题
排查配置一致性
- 确认**所有关联项目(包括NVAPI相关依赖库)**的
Project -> Properties -> C/C++ -> Code Generation -> Runtime Library都设置为Multi-threaded (/MT),避免依赖库仍使用Multi-threaded Debug (/MTd)配置。 - 打开配置管理器,检查Release模式下所有子项目的配置是否统一为Release,防止误选Debug配置导致调试库被链接。
清理残留编译文件
- 删除项目目录下的
Release、Debug、obj、ipch等文件夹,执行Rebuild Solution,彻底清除旧的调试版编译产物。
检查NVAPI库版本
- 确认链接的是NVAPI的Release版本库文件,若误使用调试版NVAPI库,其自身可能依赖调试版VC运行时,从而引入MSVCP140D.dll。
定位依赖来源
- 执行命令
dumpbin /dependents 你的可执行文件路径,查看可执行文件的依赖项列表,精准定位是哪个模块引入了MSVCP140D.dll。
内容的提问来源于stack exchange,提问作者Grosu Cristi-Alexandru
相关产品推荐
相关产品推荐

