14

是否可以将 restrib 文件更改为 msvcr100,以便其他计算机可以运行该程序而不会遇到 .dll 文件的问题?如果是这样,我怎么得到?

我确实编译了该程序,但由于缺少 msvcr120.dll 文件,其他人无法使用它。所以如果我能以某种方式改变它会很棒。

是否可以在没有旧 Visualstudio 版本的情况下安装 Plattformtoolset?

4

3 回答 3

29

你有几个选择:

  1. 在机器上安装VS2010,并将Platform Toolset选项设置为v100。
  2. 从这里安装 Windows SDK v7.0A ,它应该/可以在 VS2013 的平台工具集菜单中添加一个新选项。不过,让它发挥作用可能非常繁琐。(开箱即用它很少对我有用)。请注意,如果您在应用程序中使用 MFC,则此选项对您没有任何好处 - 此 SDK 不包含 MFC 库。
  3. 让您的用户从此处安装 Microsoft VS 2013 C++ Redistributable Package ,然后继续。
  4. 静态链接到 VS2013 运行时,而不是使用动态链接到运行时 DLL。您可以在 IDE 中通过C/C++ > Code Generation > RunTime Library > Multi-threaded (/MT)或下的项目设置进行设置(/MTd)。所有需要的代码都将编译到您的应用程序中,这将使文件更大,但会避免您提到的问题。
于 2013-10-31T12:35:40.183 回答
2

Project > Properties > General中,有一个设置叫做Platform toolset。您可以使用它来更改使用的构建工具链的版本。

截屏

于 2013-10-31T12:25:14.760 回答
1

关于更改平台工具集需要考虑的一件事:它会更改编译器,因此比 Visual Studio 2010更新的 C++ 功能将无法编译。它还需要安装其他版本。

处理此问题的最佳方法是为他们提供Visual C++ Redistributable for Visual Studio 2013

你可以让他们自己做,或者做一个安装程序。

于 2013-10-31T12:25:46.680 回答