我刚开始学习 C++,我做了一个简单的程序,想发给我的朋友让他看到。
我以发布模式向他发送 .exe,它仍然给出“MSVCP110D.dll 丢失”错误。
我不知道还能做什么,我什么都试过了。
有任何想法吗?
我刚开始学习 C++,我做了一个简单的程序,想发给我的朋友让他看到。
我以发布模式向他发送 .exe,它仍然给出“MSVCP110D.dll 丢失”错误。
我不知道还能做什么,我什么都试过了。
有任何想法吗?
MSVCP110D.dll 中的 D 表示您给了他一个调试版本。不要那样做。将您的程序编译为 Release。如果它仍然无法正常工作,他需要 Visual C++ 运行时来获得您用来编译的正确版本的 Visual Studio。
您可以使用静态 MFC 库构建您的程序。
SolutionExplorer->Project->鼠标右键->Properties->General->Use of MFC = "Use MFC in a Static Library"。
然后您可以将 .exe 发送给您的朋友,而不会出现任何依赖问题。
You can link Runtime library statically, so you won't need Redistributable package to be installed.
(for debug configuration choose "Multi-threaded Debug (/MTd)")
另一种方法是链接到静态库,而不是动态库。这样,您的可执行文件将变得更大,但它根本不需要 C++ 运行时 DLL 存在于他的机器上。请参阅项目 → 属性 → 配置属性 → C/C++ → 代码生成 → 运行时库 → 选择“多线程 (/MT)”。