使用Visual Studio 2015为Windows 7和Windows 10构建应用程序
Build applications for both Windows 7 and Windows 10 with Visual Studio 2015
我已经构建了一个利用C++11特性和winsocket的应用程序。我使用windows 10和Visual C++2015编译器构建了该应用程序。在Win10机器上运行良好。在Win7机器上,会显示一个弹出窗口,说明文件ucrtbase.dll丢失。
我在网上做了一点研究,发现微软对CRT做了很大的改变,因此重命名了一些dll。这些dll本身在Win7上不可用。
有没有一种方法可以独立于这些库构建我的应用程序?我想将该应用程序同时发送给Win7和Win10用户。
感谢
正如对您的问题的评论所说,您可以通过使用项目的Configuration Properties -> C/C++ -> Code Generation -> Runtime Library
设置中的/MT标志来静态链接CRT。
如果这不是您项目的一个选项,您可以安装CRT可再发行文件。
在C:Program Files (x86)Microsoft Visual Studio 14.0VCredist1033
中,您将找到三个文件:
vcredist_arm.exe
vcredist_x64.exe
vcredist_x86.exe
这些包包含此版本Visual Studio的CRT,设计用于安装在需要运行软件的计算机上。
在运行应用程序之前,请在目标系统上安装相应的可再发行软件。例如,如果您的应用程序是32位的,请安装vcredist_x86.exe
。对于64位,请安装vcredist_x64.exe
。
通常,当你为软件创建安装程序时,你也会捆绑这些文件,并在安装过程中运行它们。
相关文章:
- 无法使用Qt Creator在Windows中构建yaml-cpp
- CMake WxWidgets项目成功地在Linux上构建,但没有在Windows上构建
- 使用 VS2015 在 Windows 10 上构建 Fortran .lib x64 位并将其链接到 C++
- 在Windows 10上使用Visual Studio 2019构建的Tesseract API c ++程序在Wind
- 如何在 Linux for Windows 上通过 MinGW 构建静态 ICU 的 Boost
- meson-build:wxWidgets 资源文件,用于 Windows 未构建
- 使用 MinGW 在 Windows 上构建 GLEW 时遇到问题
- 坚持编译QDoc以在Windows上构建qt5
- MSYS2 MinGW64 在 Windows 上构建 GMP/MPFR 作为静态库,并将它们链接到使用 CL 编译的
- 是否有可能构建面向Linux和Windows的.Net Core C++ / CLI应用程序?
- 使用 CMake 在 Windows 10 上构建 uWebSockets
- OpenCV cmake构建总是在Windows中抛出错误
- 如何在Windows上链接动态构建的cmake文件
- gRPC C++如何在Windows 10上构建
- 使用 Bazel (Windows) 构建 Tensorflow 的问题 => 使用 Tensorflow C++ API
- C Linux代码破坏Windows构建,因为缺少标头意味着功能不确定
- node-gip解析windows构建上的外部库符号
- 使用cygwin为windows构建静态库
- Linux和Windows构建的应用程序之间的OpenCV行为差异
- 在Linux上为Windows构建一个应用程序