6

用户可能安装了哪些 Visual C++ 运行时?

更新:这个问题更像是“部署基于 Internet 的应用程序的最佳方式是什么,用 C++ 编写。这需要 Microsoft Visual C++ 运行时。”

4

3 回答 3

8

我不相信微软对操作系统安装上可用的运行时间做出任何保证。它更多的副作用包括使用特定运行时间构建的应用程序。

如果您需要特定的 C++ 运行时,您需要自己安装它。如果您正在构建 MSI 安装,Visual Studio 将安装所需的合并模块。如果没有,您可以从 Microsoft 下载运行时。

如果您希望仅通过复制单个 EXE 即可安装,则静态链接到运行时。运行时将内置到您的 EXE 中,不会有外部依赖项。

编辑:另请参阅此答案-> Microsoft 明确不保证任何版本的 C++ 运行时都将安装在 Windows 上。

于 2010-11-13T04:01:32.413 回答
5

这个答案很重要,因为需要基于 C++ 的应用程序的Internet 部署


我发现了以下内容:

  • 任何 C++ 运行时都没有全新的 Windows 安装(msvcrt.dll 除外)
  • Windows XP 和更高版本附带 .NET 框架运行时(不适合)
  • C++ 运行时可再发行组件的下载量很小(每个 1-4MB)
  • 自动更新不会安装任何 C++ 运行时。
  • 安装运行时时。只要启用了 Microsoft Update 并使用可再发行安装程序进行部署,Windows 就会处理安全补丁。
  • Internet 部署:您的安装程序(静态链接)应检测运行时的存在,如果尚未安装则下载。您还可以使用使用 VC 6 运行时的 gcc-mingw32 编译器。这种方法需要互联网连接。
  • 大多数主要应用程序似乎都没有静态链接。但有些,如 Mozilla Firefox,将自定义运行时分发为 DLL。

微软应该开始在他们的操作系统中包含 C++ 运行时,就像他们为 .NET 所做的那样

于 2010-11-16T10:34:07.703 回答
2

如果它是可再分发的,那么它打算在安装程序中再分发。我会将它作为“如果尚未安装则安装”项目包含在您的安装程序中。

至于你问的具体问题,你试过微软网站吗?可能需要一些搜索,但它应该在那里。

于 2010-11-13T03:21:59.737 回答