Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.NET 4安装失败,因为SECUREREPAIR无法创建文件SetupResources.dll:用于计算哈希的ContentHash错误:997_.net_Installation_Windows Installer - Fatal编程技术网

.NET 4安装失败,因为SECUREREPAIR无法创建文件SetupResources.dll:用于计算哈希的ContentHash错误:997

.NET 4安装失败,因为SECUREREPAIR无法创建文件SetupResources.dll:用于计算哈希的ContentHash错误:997,.net,installation,windows-installer,.net,Installation,Windows Installer,我在Windows 7 x64计算机上安装任何.NET Framework时遇到问题,我一直收到以下日志文件,这可能是什么原因 OS Version = 6.1.7601, Platform 2, Service Pack 1 OS Description = Windows 7 - x64 Ultimate Edition Service Pack 1 CommandLine = C:\09b8fe547577883fe82c\\Setup.exe /x86 /x64 TimeZone = M

我在Windows 7 x64计算机上安装任何.NET Framework时遇到问题,我一直收到以下日志文件,这可能是什么原因

OS Version = 6.1.7601, Platform 2, Service Pack 1
OS Description = Windows 7 - x64 Ultimate Edition Service Pack 1
CommandLine = C:\09b8fe547577883fe82c\\Setup.exe /x86 /x64
TimeZone = Mitteleuropäische Zeit
Initial LCID = 1031
Using Simultaneous Download and Install mechanism
Operation: Installing
Package Name = Microsoft .NET Framework 4 Setup
Package Version = 4.0.30319
User Experience Data Collection Policy: AlwaysUploaded
Number of applicable items: 11
Exe (C:\09b8fe547577883fe82c\SetupUtility.exe) succeeded.
Exe Log File: dd_SetupUtility.txt
ServiceControl operation succeeded!
ServiceControl operation succeeded!
Exe (C:\09b8fe547577883fe82c\Windows6.1-KB958488-v6001-x64.msu) failed with 0x240006 - (null).
Exe (C:\09b8fe547577883fe82c\SetupUtility.exe) succeeded.
Exe Log File: dd_SetupUtility.txt
MSI (C:\09b8fe547577883fe82c\netfx_Core_x64.msi) Installation failed. Msi Log: Microsoft .NET Framework 4 Setup_20150116_161918591-MSI_netfx_Core_x64.msi.txt
Final Result: Installation failed with error code: (0x80070643), "Schwerwiegender Fehler bei der Installation. " (Elapsed time: 0 00:00:11).
我已经从MSI文件中粘贴了一个日志文件,你能看一下吗

主要问题似乎是我在安装日志中找到的以下信息(请参见上面日志中的第2981至2999行):

我发现的唯一有关Secrepair问题的信息是KB2918614,我完全卸载并重新启动了它,但问题仍然存在。 此外,我重新安装了KB2918614,应用了它的修补程序(KB3000988),问题仍然存在

无论我尝试安装哪一个,在.NETFramework 4.0和4.5中都会发生这种情况

我在尝试应用.NET 4.5.2的更新时第一次注意到这个问题,但失败了,因此我完全卸载了.NET framework 4和4.5,现在无法安装其中任何一个


你知道是什么导致了这种奇怪的行为吗?

经过几天徒劳的搜索,我偶然发现了。它说要卸载KB2918614、KB3000988和KB3008627。这对我来说是个好办法。
显然,罪魁祸首是KB3008627,因为我在以前的尝试中没有卸载该软件。

提供的解决方案(卸载KB2918614、KB300988和KB3008627)对我无效。卸载这些更新后,我遇到了相同的错误

对我有效的是JohnL999建议的白名单解决方案

因此,我必须做什么才能安装它:

  • HKEY\U LOCAL\U MACHINE\SOFTWARE\Policys\Microsoft\Windows\Installer

  • HKEY\U LOCAL\U MACHINE\SOFTWARE\Policys\Microsoft\Windows\Installer中创建密钥
    SecureRepairWhitelist

  • SecureRepairWhitelist
    中,创建一个字符串,其中包含要作为白名单名称的产品ID。在我的例子中,这是
    {3911CF56-9EF2-39BA-846A-C27BD3CD0685}
    。您可以在msi日志文件中找到产品ID,错误前的一些行

    SECUREREPAIR: Failed to CreateContentHash of the file: 1030\SetupResources.dll: for computing its hash. Error: 997.
    
    看起来是这样的:

    SECREPAIR: Hash Database: C:\windows\Installer\SourceHash{3911CF56-9EF2-39BA-846A-C27BD3CD0685}
    
    或者这个:

    SOURCEDIR product ==> {3911CF56-9EF2-39BA-846A-C27BD3CD0685}
    
    可能是不同的产品ID,具体取决于要安装的MSI


  • 即使在卸载KB2918614等软件之后,我仍然不断地遇到这个错误,而最终为我解决这个问题的方法是将
    C:\ProgramData\Microsoft\Crypto\RSA\S-1-5-18
    重命名为
    C:\ProgramData\Microsoft\Crypto\RSA\S-1-5-18.bak
    。只有在重试失败的安装时,安装才会成功!:)

    安装失败将重新创建该文件夹

    我在博客帖子的评论部分找到了这个解决方案:

    Gerd Hübner 2015年9月4日上午6:15#

    简而言之:重命名文件夹C:\ProgramData\Microsoft\Crypto\RSA\S-1-5-18


    我也有类似的问题,日志显示
    MSI(s)(EC:E4)[12:21:30:914]:SOURCEDIR=>C:\23d8e052b22ce652a889c3f\MSI(EC:E4)[12:21:30:914]:SOURCEDIR产品=>{26784146-6E05-3FF9-9335-786c7fbc05be}MSI(EC:E4)[12:21:30:914]:SECUREREPAIR失败。错误代码:3e5F5BB34B8操作开始12:21:30:RegisterProduct。微星(EC:E4)[12:21:31:064]:错误997。错误997。重叠的I/O操作正在进行。
    我原以为它是抗病毒的,但卸载它并没有改变任何东西。我目前正遭受完全相同的问题,唯一对我有帮助的是将.NET升级包在注册表中白名单(谷歌的“SecureRepairPolicy”),但每当我尝试安装.NET 4.5.2更新时,通常都会失败,并出现相同的SECUREREPAIR错误。我猜微软并没有完全解决这些问题,因为不管是否安装了KB2918614,或者是否安装了该KB的热修复程序,都会发生这种情况。似乎与该更新无关,或者卸载后会留下一些剩余内容。我在这里的经历真的很令人失望,我完全责怪你!这在Windows7x64SP1上对我很有效。我首先只卸载了KB3008627,但得到了相同的结果。卸载KB3008627时,我的计算机挂起在“准备配置windows…不要关闭计算机”处超过30分钟,因此我必须硬重置,然后等待大约10分钟,直到完成。然后我卸载了KB3000988,它不需要重新启动,然后重试,但得到了相同的结果。最后,在卸载KB2918614并按要求重新启动后,.net 4.5.2更新成功完成!:)我可以确认卸载KB3008627(除了卸载KB2918614和KB3000988)确实有帮助。在此之前,我只卸载了括号中的两个,因为这是您在web上的任何位置都可以找到的,但是很明显,KB3008627在这个奇怪的场景中也扮演着重要角色。有人知道卸载这三个软件是否会使我的计算机更容易受到攻击吗?我完全希望微软能更彻底地测试这些场景,但是…:(在卸载KBs并成功安装.NET 4.5.2之后,我运行了Windows Update,重新安装了两个KBs(我想是2918614和3008627).所以我想我已经关闭了所有可以关闭atm的漏洞。谢谢Torben,这是一个了不起的化身!你的回答让我在经过两天的努力后安装了.NET 4.6。上面的KB卸载解决方案对我不起作用。我有Visual Studio 2015预览,并卸载了它,这导致了最初的问题。这也帮助了我l、 如果无法获得不安装的软件包的产品ID(GUID),您可以临时将SecureRepairPolicy设置为1。@ironsam我必须创建安装密钥,但在失败的4.6 framework安装上,添加SecureRepairPolicy=1的DWord对我也有效。:)注:上述步骤在中也有详细说明。同样的问题也发生在我身上
    SOURCEDIR product ==> {3911CF56-9EF2-39BA-846A-C27BD3CD0685}