要为客户部署哪个msvcp100.dll / msvcr100.dll?

时间:2016-08-17 21:00:23

标签: c++ visual-studio deployment

使用我的产品,我已经部署了特定版本的msvcp100.dll和msvcr100.dll,这些版本也属于重新分发软件包。更确切地说,我在目录C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\redist\x86\Microsoft.VC100.CRT中使用它们。我只是将这些dll放入我软件的安装目录中。是的,我的软件编译为x86和Visual Studio 2010。

那些在我的机器上工作正常。但是,我发现有些客户会收到错误,可以通过删除这些文件并使用Microsoft的在线安装程序手动安装Visual Studio 2010可再发行组件来解决。错误的形式如下:

  

此应用程序无法启动,因为MSVCR100.dll   没找到。重新安装应用程序可能会解决此问题。

我认为msvcp100.dll和msvcr100.dll在某种程度上是独一无二的,但似乎有不同的版本。我应该如何将这些文件部署到我的客户,使其适用于所有客户?如果这不可能,那么部署这些文件的好方法是什么?

PS:如果投票失败,请提供评论,以便我可以编辑我的问题。我不明白为什么它不应该是一个值得的问题。许多软件似乎在他们的安装目录中都有这两个DLL。

1 个答案:

答案 0 :(得分:1)

这取决于操作系统版本和体系结构,因此最好在安装程序中添加Microsoft Visual C ++ Redistributable Package作为先决条件,以便安装程序可以检查系统是否实际需要,然后相应地安装/跳过它