Visual studio 2010 包括c++;作为预请求,但表示;一个新版本已经存在;
我正在使用VisualStudio安装项目。如果我去了安装项目的属性,它让我选择需要哪些预Req,在这个点上我选择C++重新分发。Visual studio 2010 包括c++;作为预请求,但表示;一个新版本已经存在;,visual-studio-2010,windows-installer,setup-project,Visual Studio 2010,Windows Installer,Setup Project,我正在使用VisualStudio安装项目。如果我去了安装项目的属性,它让我选择需要哪些预Req,在这个点上我选择C++重新分发。 在一些系统中,这很好,但是最近我的用户报告说安装失败了,因为“机器上检测到了一个更新版本的微软Visual C++ 2010可重新分发。” 正确的方法是什么?VisualStudio的检测是否有问题,无法检测到C++ C++?/P>< P>默认VisualC++ 2010可重分发使用产品代码进行检测。所以VisualC++ 2010 SP1可重新分配没有检测到安装。
在一些系统中,这很好,但是最近我的用户报告说安装失败了,因为“机器上检测到了一个更新版本的微软Visual C++ 2010可重新分发。”
正确的方法是什么?VisualStudio的检测是否有问题,无法检测到C++ C++?/P>< P>默认VisualC++ 2010可重分发使用产品代码进行检测。所以VisualC++ 2010 SP1可重新分配没有检测到安装。这就是软件包试图安装它但失败的原因 一个好的解决方案是创建自己的自定义先决条件,该先决条件使用更好的检测标准。这里有一篇文章可以帮助您: Visual Studio安装项目不支持自定义先决条件创建。但是,可以通过手动生成所需的清单来完成 您可以在此处找到清单结构: 这些清单可以使用该工具自动生成 生成包清单后,可以将所有这些文件(包括包)添加到Visual Studio先决条件文件夹中的单独文件夹中,例如:
C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\
这样,Visual Studio将在安装项目属性页中显示先决条件。糟糕,这太难看了。我想知道微软放弃VS2010运行时DLL的并行安装后会发生什么。看起来很清楚,互联网上充满了这个安装错误。最大的受害者似乎是未能安装街道和地图的微软本身 我不知道有任何安全补丁,所以我猜你还没有更新到SP1。你的客户使用的是一家供应商的产品。这是一场总有一天会输掉的战斗。请考虑利用DLL的应用程序本地部署,将它们复制到与主EXE相同的目录中。在将安装包放在一起之前,只需从vc/redist目录复制它们,无需勾选先决条件。您需要:
- 用于常规CRT的msvcr100.dll和msvcp100.dll
- 如果使用ATL,则使用atl100.dll
- mfc100.dll、mfc100u.dll、mfcm100.dll、mfc100u.dll,如果使用MFC(u=Unicode,m=managed)
- mfc100xxx.dll,其中xxx是在非英语机器上使用MFC时的三字母语言代码
- 如果在代码中使用OpenMP,请使用vcomp100.dll