安装Windows SDK 7.1时出错


87

我在网上看到发布的Windows SDK时遇到错误,但是没有一种解决方案适合我。这是我得到的日志

9:43:37 AM Monday, October 14, 2013: SFX C:\Program Files\Microsoft SDKs\Windows\v7.1\Setup\SFX\vcredist_x64.exe installation started with log file C:\Users\clarkbd\AppData\Local\Temp\Microsoft Windows SDK for Windows 7_c3c42538-8a3e-439d-be39-aee3078ca098_SFX.log
9:43:43 AM Monday, October 14, 2013: C:\Program Files\Microsoft SDKs\Windows\v7.1\Setup\SFX\vcredist_x64.exe installation failed with return code 1603
9:43:53 AM Monday, October 14, 2013: [SDKSetup:Error] Config_Products_Install: Installation of Product Microsoft Windows SDK for Windows 7 (failed): Please refer to Samples\Setup\HTML\ConfigDetails.htm document for further information. Stack:    at SDKSetup.Product.ConfigureRelatedSfx()    at SDKSetup.Product.ConfigureNewProduct(ManualResetEvent CancelEvent)
9:43:53 AM Monday, October 14, 2013: [SDKSetup:Info] Config_Products_InstallNew: End installation of new product: Microsoft Windows SDK for Windows 7
9:43:53 AM Monday, October 14, 2013: [SDKSetup:Error] Config_Products_Install: Windows SDK Setup (failed): Installation of the "Microsoft Windows SDK for Windows 7" product has reported the following error: Please refer to Samples\Setup\HTML\ConfigDetails.htm document for further information. Stack:    at SDKSetup.Product.ConfigureNewProduct(ManualResetEvent CancelEvent)      at SDKSetup.Product.SetupProduct(TaskMode taskMode, ManualResetEvent CancelEvent)       at SDKSetup.ProductCollection.SetupProducts(TaskMode taskMode, DownloadManager downloadManager, ManualResetEvent cancelEvent)       at SDKSetup.ConfigProducts.DoCurrentTask(TaskMode Task)

当我尝试单独运行vcredist_x64时,出现此错误:

MSI (s) (80:5C) [09:51:50:971]: Product: Microsoft Visual C++ 2010  x64 Redistributable - 10.0.30319 -- A later version of Microsoft Visual C++ 2010  x64 Redistributable - 10.0.30319 is already installed.

现在,根据我在线阅读的每个解决方案,我将卸载可再发行组件并继续进行安装。问题是我没有安装任何VC ++ 2010可再发行组件(仅2005和2008)。除了主程序外,唯一的东西就是Microsoft Visual Studio 2010 Express Prerequisites x64 - ENU。卸载它对我收到的错误没有影响。我的计算机上有些东西告诉SDK我已经安装了此Redist,但是我不确定是什么。谁能为我阐明一下?

编辑:即使我完全卸载Visual C ++ 2010,此问题仍然存在。我还能从我的计算机上删除此软件的所有痕迹吗?

编辑2:在稍微搜索注册表后,我发现NI安装了自己的可视化的c ++ 2010及其程序之一,但未包含在“添加或删除程序”列表中。我已经卸载了此软件,希望它可以正确安装。

编辑3:没有运气,仍然出现相同的错误。我可以在注册表中找到其他2010可再发行组件,但是尝试手动执行卸载字符串只是告诉我只能在已安装的程序包上运行它。如果我知道vcredist如何找到当前安装的重新分发,这将更加简单。

Answers:


130

这是一个已知的问题http://support.microsoft.com/kb/2717426

原因

当您在安装了更高版本的Visual C ++ 2010可再发行组件的计算机上安装Windows 7 SDK时,会发生此问题。

解析度

若要解决此问题,必须在安装Windows 7 SDK之前卸载Visual C ++ 2010 Redistributable的所有版本。您可能已安装以下一种或多种产品:

  • Microsoft Visual C ++ 2010 x86可再发行
  • Microsoft Visual C ++ 2010 x64可再发行

卸载Microsoft Visual C ++ 2010可再发行产品之后,您可以安装Windows 7 SDK。安装Windows 7 SDK之后,您可以重新安装Visual C ++ 2010可再发行产品的较新版本,以便将Visual C ++ 2010可再发行产品还原到其原始状态。

卸载图片


4
我有两个。删除它们即可安装SDK。
亚当·布鲁斯

1
最新的版本(到目前为止)称为,Microsoft Visual C++ 2010 SP1 Redistributable Package并且是version 10.0.40219.1。我花了点时间才弄清楚我需要搜索SP1,所以在这里留给别人看看。
Terrabits

66

成功!我能够使用Microsoft的Fix it实用程序从计算机中清除vc ++ 2010可再发行组件:http : //support.microsoft.com/mats/Program_Install_and_Uninstall

它能够找到x64和x86版本的可再发行版本并将其卸载,从而从注册表中删除了约120个条目,并允许sdk安装继续进行。它与NI的vc ++ 2010可再发行版本无关。


15
这个答案对我有所帮助,但是对我来说,使用“添加或删除程序”就足够了。
cubuspl42

对于大多数人来说。虽然不是我的情况,但= /
红色警报

8
我在日志中的错误是,DDSet_Error: Patch Hooks: Missing required property 'ProductFamily': Setup cannot continue.并且 DDSet_Error: Patch Hooks: Missing required property 'ProductFamily': Setup cannot continue. DDSet_Warning: Setup failed while calling 'getDLLName'. System error: Cannot create a file when that file already exists. 为x86和x64卸载C ++ 2010 redist为我解决了此问题。
Diederik 2013年

完全我还不够用“添加或删除程序”从计算机上删除了所有VC ++可再发行文件。但是在使用@RedAlert提到的Microsoft的Fix It Utility之后,SDK安装对我有用。
Christian Junk 2014年

我在stackoverflow.com/questions/1901279/上尝试了答案,这使我更进一步,但被卡在未正确卸载的VC ++编译器上。因此,尽管对我来说这不是可再发行文件,但我设法使用Fix it卸载了阻止我安装的内容。谢谢!!
Madcowswe 2014年

4

我在Win7 Prof 64bit上使用Windows SDK Web安装程序感到挣扎。卸载/重新安装VS 2010可再发行组件没有帮助。仅在下载Windows SDK ISO文件之后,安装才成功完成(用于x64的是GRMSDKX_EN_DVD.iso)。

我的理论是Web安装程序选择了错误的体系结构,从而导致安装失败。


1

以上所有答案都对我有所帮助,但没有一个对我真正有用。

通过Visual Express 2010之前安装SDK 我终于设法使用Visual Express 2010编译了64位。

  1. (卸载Visual Express 2010,如果仍将某些Visual Compiler视为已安装但未在“程序和功能”面板中显示,则可以使用此注册表hack
  2. 安装Windows SDK
  3. 安装Visual Express 2010
  4. 配置默认的库搜索路径以指向SDK

我懒于卸载Visual Express,重新安装SDK,然后再重新安装Visual Express,但是我将它们全部保存在VirtualBox VM中,我将把它保管在银行中!;)


@developerbmw我喜欢在沙盒VM中玩这类游戏,这可能就是我的孩子了;)
Matthieu
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.