You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使Visual Studio 2019 C++项目成为可独立运行程序?

问题分析与解决方案

为什么会缺少这些DLL?

你提到的MSVCP140D.dll、VCRUNTIME140D.dll、ucrtbased.dll都是Visual Studio专属的调试版本C++运行时库。带D后缀的文件名说明你当前是用Debug模式编译的程序,这类调试库默认只在安装了Visual Studio的机器上存在,普通Windows电脑没有预装,所以会报错。

解决方法

1. 切换到Release模式编译(推荐)

Debug模式是给开发调试用的,不适合分发。换成Release模式编译后,程序会依赖非调试版的运行时库(比如MSVCP140.dll、VCRUNTIME140.dll),这些库在绝大多数Windows 10/11系统中已经预装:

  • 在VS 2019顶部工具栏的「解决方案配置」下拉菜单中,将Debug改为Release
  • 点击「生成」→「生成解决方案」重新编译,拿到Release目录下的exe文件即可分发

2. 静态链接运行时库(生成单文件exe)

如果希望程序完全独立,不依赖任何外部DLL,可以把运行时库静态编译进程序:

  • 右键项目→「属性」
  • 展开「配置属性」→「C/C++」→「代码生成」
  • 将「运行库」选项:
    • Debug模式下从「多线程调试 DLL (/MDd)」改为「多线程调试 (/MTd)」
    • Release模式下从「多线程 DLL (/MD)」改为「多线程 (/MT)」
  • 重新编译,生成的exe可以直接在其他Windows电脑上运行

3. 手动打包调试版运行时库(仅Debug模式分发时用)

如果必须分发Debug版本(不推荐,Debug版性能差、体积大),可以把所需的调试库和exe放在一起:

  • 找到VS安装目录下的调试库路径,比如:
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Redist\MSVC\[版本号]\debug_nonredist\[x86/x64]\Microsoft.VC142.DebugCRT
  • 复制该目录下的MSVCP140D.dll、VCRUNTIME140D.dll、ucrtbased.dll到你的exe所在文件夹,一起打包分发

内容的提问来源于stack exchange,提问作者Caleb Barone

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 00:15:44