关于错误代码为0x80070643的问题的解决办法

这个错误是我在装VS2012的时候遇到的,在错误日志中发现了这个错误代码--0x80070643。

通过长时间的查找资料和尝试,我基本搞明白了0x80070643的大致原因和解决办法,顺便记录下来。

这个问题在安装很多软件的时候都可能会遇到,典型的像MSE(Microsoft Security Essentials),Zune,Visual Studio 2012,.NET 等,貌似都是微软的东西么。。。

先贴上日志文件中的错误部分的记录:

[199C:1944][2012-10-20T17:24:08]: Error 0x80070643: Failed to install MSI package.
[199C:1944][2012-10-20T17:24:08]: Error 0x80070643: Failed to execute MSI package.
[1938:121C][2012-10-20T17:24:08]: Error 0x80070643: Failed to configure per-machine MSI package.
[1938:121C][2012-10-20T17:24:08]: MUX: Installation size in bytes for package: vs_devenv MaxAppDrive: 614400 MaxSysDrive: 450560 AppDrive: 0 SysDrive: 311296
[1938:121C][2012-10-20T17:24:08]: MUX: Return Code:0x80070643 Msi Messages:1406 Result Detail:0 Restart:None
[1938:121C][2012-10-20T17:24:09]: MUX: Unregistering and registering msiexec.
[1938:121C][2012-10-20T17:24:09]: MUX: Executing Process: Exe:C:\Windows\system32\msiexec.exe Arguments:/unreg
[1938:121C][2012-10-20T17:24:09]: MUX: Process exit code: 0
[1938:121C][2012-10-20T17:24:09]: MUX: Executing Process: Exe:C:\Windows\system32\msiexec.exe Arguments:/regserver
[1938:121C][2012-10-20T17:24:09]: MUX: Process exit code: 0
[1938:121C][2012-10-20T17:24:09]: MUX: Retrying the package again
[1938:121C][2012-10-20T17:24:09]: Application requested retry of package: vs_devenv, encountered error: 0x80070643. Retrying...
[199C:1944][2012-10-20T17:24:09]: Applying execute package: vs_devenv, action: Install, path: C:\ProgramData\Package Cache\{330E5D98-20D2-4CA4-AE51-FCB8AA80F634}v11.0.50727\packages\vs_devenv\vs_devenv.msi, arguments: ' MSIFASTINSTALL="7" VSEXTUI="1" VS7.3643236F_FC70_11D3_A536_0090278A1BB8="H:\Program Files\microsoft visual studio 12"'
[1938:121C][2012-10-20T17:24:12]: MUX: ExecuteError: Package (vs_devenv) failed: Error Message Id: 1406 ErrorMessage: Could not write value devenv.exe to key \SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_RESTRICT_ABOUT_PROTOCOL_IE7. Verify that you have sufficient access to that key, or contact your support personnel.
[199C:1944][2012-10-20T17:24:13]: Error 0x80070643: Failed to install MSI package.
[199C:1944][2012-10-20T17:24:13]: Error 0x80070643: Failed to execute MSI package.
[1938:121C][2012-10-20T17:24:13]: Error 0x80070643: Failed to configure per-machine MSI package.

网上也有不少人遇到这个问题并且贴出了这段错误日志,然后得到的回复普遍是:安装包有问题,重新下一个iso或者在线安装之类的回答,而这种方法解决问题的几率貌似灰常低。

其实,有一种可能的问题是:注册表中

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_RESTRICT_ABOUT_PROTOCOL_IE7的权限有问题。如果安装了某些优化软件,可能会将“完全读取”权限给毙了,只给“读取”权限。只要手动打开“完全读取”权限,应该就有解决的可能性。

当然,这只是多种错误情况的一种,具体问题还得看当时的错误日志。

 

 

然后,是安装.NET Framework时出现错误代码0x80070643的可能的解决办法。(参考microsoft官方帮助与支持)

出现这个错误的原因是:如果 MSI 软件更新注册已损坏,或如果计算机中的 .NET 安装已损坏,可能会发生此问题。

方法1:修复 MSI 软件更新注册损坏问题。若要自动修复,可以从http://support.microsoft.com找到相关软件下载,安装即可。但是此方法不适用于win7.

方法2:修复未更新版本的 .NET Framework。

如果您运行的是 Windows Vista 或 Windows 7,请执行以下步骤:

  1. 关闭所有应用程序。
  2. 单击“开始”,在“搜索”框中键入“卸载”,然后单击“卸载程序”。
  3. 双击“Microsoft .NET Framework 4 Client Profile”。
  4. 选择“修复 .NET Framework 4 Client Profile 至其原始状态”,然后单击“下一步”。
  5. 完成修复后,请单击“完成”。
  6. 单击“立即重新启动”以重新启动计算机。
  7. 重新启动计算机后,单击“开始”,在“搜索”框中键入“Windows Update”,然后单击“Windows Update”安装最新的 Windows 更新。

如果您运行的是 Windows XP,请执行以下步骤:

  1. 关闭所有应用程序。
  2. 依次单击“开始”、“控制面板”和“添加或删除程序”。
  3. 单击已安装程序列表中的“Microsoft .NET Framework 4 Client Profile”,然后单击“更改/删除”。
  4. 选择“修复 .NET Framework 4 Client Profile 至其原始状态”,然后单击“下一步”。
  5. 完成修复后,请单击“完成”。
  6. 单击“立即重新启动”。
  7. 重新启动计算机并登录 Windows 后,单击“开始”,在“搜索”框中键入“Windows Update”,然后单击“Windows Update”。
  8. 单击“检查更新”。扫描完成后,单击“安装 Windows 更新”,然后遵循说明执行操作。

 

一点经验,跪求不被大神喷。啦啦啦~

 

posted on 2012-10-20 19:21  百年coding  阅读(121230)  评论(13编辑  收藏  举报