2015-01-19 15 views
10

Ho problemi nell'installazione di qualsiasi .NET Framework sulla mia macchina Windows 7 x64, continuo a ricevere il seguente file di registro, cosa potrebbe causa questo?.NET 4 non si installa perché SECUREREPAIR non riesce a CreateContentHash del file SetupResources.dll: per hash di calcolo Errore: 997

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). 

Ho incollato un file LOG dal file MSI, puoi dare un'occhiata?

https://paste.ee/p/zXSWH

Il problema principale sembra essere le seguenti informazioni che ho trovato nel registro di configurazione (vedi linea 2981-2999 nel registro sopra):

MSI (s) (78!78) [16:11:30:749]: SECUREREPAIR: Failed to CreateContentHash of the file: 1033\SetupResources.dll: for computing its hash. Error: 997 
MSI (s) (78!78) [16:11:30:750]: SECREPAIR: Failed to create hash for the install source files 
MSI (s) (78!78) [16:11:30:750]: SECUREREPAIR: SecureRepair Failed. Error code: 3e5F7CE34B8 
Aktion gestartet um 16:11:30: CA_NgenUpdateHighestVersion_I_RB_amd64.3643236F_FC70_11D3_A536_0090278A1BB8. 
MSI (s) (78!78) [16:11:30:753]: 

L'unica informazione Ho trovato dei problemi con Secrepair KB2918614, che ho completamente disinstallato, riavviato, ma il problema persiste. Inoltre, ho reinstallato KB2918614, applicato la sua correzione (KB3000988) e il problema persiste.

Succede con .NET Framework 4.0 e 4.5, non importa quale di questi provo a installare.

Ho notato questo problema quando ho provato ad applicare l'aggiornamento per .NET 4.5.2, che non è riuscito, quindi ho completamente disinstallato .NET Framework 4 e 4.5 e ora non riesco a installare nessuno di questi.

Avete qualche idea che cosa potrebbe causare questo strano comportamento?

+2

ho problemi simili, il registro dice 'MSI (s) (CE: E4) [12: 21: 30: 914] : SOURCEDIR ==> C: \ 23d8e0525b22ce652a889c3f \ MSI (s) (CE: E4) [12: 21: 30: 914]: prodotto SOURCEDIR ==> {26784146-6E05-3FF9-9335-786C7CBFB5BE} MSI (s) (EC: E4) [12: 21: 30: 914]: SECUREREPAIR: SecureRepair non riuscita. Codice errore: 3e5F5BB34B8 Inizio azione 12:21:30: RegisterProduct. MSI (s) (EC: E4) [12: 21: 31: 064]: Errore 997. Errore 997. L'operazione di I/O sovrapposta è in corso. Ho pensato che fosse AntiVir, ma la sua disinstallazione non è cambiata nulla. – Thaoden

+0

Attualmente sto soffrendo esattamente dello stesso problema, l'unica cosa che mi ha aiutato è stata la whitelist del pacchetto di aggiornamento .NET nel registro (Google per "SecureRepairPolicy"), ma ogni volta che provo a installare l'aggiornamento .NET 4.5.2 normalmente fallisce con lo stesso errore SECUREREPAIR. Immagino che Microsoft non abbia risolto completamente questi problemi, perché succede non importa se KB2918614 è installato o meno, o se è installato l'aggiornamento rapido per quel KB. Sembra essere indipendente da tale aggiornamento, o la disinstallazione lascia alcuni residui. Davvero deludente per ciò che provo qui, sono totalmente responsabile della colpa – Erik

risposta

5

Dopo alcuni lunghi giorni di ricerca infruttuosa, sono incappato in https://forums.lenovo.com/t5/ThinkVantage-Technologies/Install-of-Sytem-update-fails-with-MSI-installer-Error-997/td-p/1802731. Dice che per disinstallare KB2918614, KB3000988 e KB3008627. Questo ha fatto il trucco per me.
Apparentemente, il colpevole è KB3008627 poiché non l'ho disinstallato nei miei precedenti tentativi.

+0

Grazie! Questo ha funzionato per me su Windows 7 x64 SP1. Per prima cosa ho disinstallato KB3008627, ma ho ottenuto lo stesso risultato. La disinstallazione di KB3008627 ha bloccato il computer in "Preparazione alla configurazione di Windows ... Non spegnere il computer" per più di 30 minuti, quindi ho dovuto eseguire un hard reset e quindi attendere circa 10 minuti fino al completamento. Ho quindi disinstallato KB3000988 che non ha richiesto il riavvio, riprovato, ma ho ottenuto lo stesso risultato. Infine, dopo aver disinstallato KB2918614 e riavviato come richiesto, l'aggiornamento .net 4.5.2 è terminato correttamente! :) –

+1

Posso confermare che disinstallare KB3008627 (oltre a disinstallare KB2918614 e KB3000988) aiuta effettivamente. In precedenza, ho solo disinstallato i due tra parentesi, perché è quello che trovi ovunque sul web, ma ovviamente, KB3008627 svolge un ruolo importante anche in questo strano scenario. Qualcuno sa se la disinstallazione di questi tre rende il mio computer più vulnerabile agli attacchi? Mi auguro che Microsoft abbia verificato questi scenari in modo più approfondito ... :( – Erik

+1

Dopo aver disinstallato i KB e installato correttamente .NET 4.5.2, ho eseguito Windows Update che ha reinstallato due KB (2918614 e 3008627 penso). Ho chiuso tutte le vulnerabilità che posso chiudere atm – Thaoden

18

La soluzione fornita da Thaoden (disinstallando KB2918614, KB3000988 e KB3008627) non ha funzionato per me. Ho avuto gli stessi errori dopo aver disinstallato questi aggiornamenti.

Ciò che ha funzionato per me è stata la soluzione alternativa suggerita da JohnL999 here.

Allora, che cosa ho dovuto fare per rendere l'installazione:

  1. Creare un DWORD denominato SecureRepairPolicy con valore 2 in HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Installer

  2. Crea chiave SecureRepairWhitelist in HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Installer

  3. In SecureRepairWhitelist , crea una stringa con l'ID prodotto che desideri inserire nella whitelist come nome. Nel mio caso questo era {3911CF56-9EF2-39BA-846A-C27BD3CD0685}.È possibile trovare l'ID del prodotto nel file di registro msi, alcune linee prima che l'errore

    SECUREREPAIR: Failed to CreateContentHash of the file: 1030\SetupResources.dll: for computing its hash. Error: 997. 
    

    Ecco come si presenta:

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

    o questo:

    SOURCEDIR product ==> {3911CF56-9EF2-39BA-846A-C27BD3CD0685} 
    

    potrebbe essere un ID prodotto diverso a seconda dell'MSI che si desidera installare.

+1

Grazie a Torben, questa è una meraviglia incarnata! La tua risposta mi ha permesso di installare .NET 4.6 dopo 2 giorni di migrazione. La soluzione di disinstallazione di KB sopra non aveva funzionato per me. 2015 Anteprima e disinstallato, che ha causato i problemi originali. – TomEberhard

+4

Anche questo mi ha aiutato. Se non riesci a raggiungere l'ID prodotto (GUID) per il pacchetto che non verrà installato, puoi impostare temporaneamente SecureRepairPolicy su un valore di 1 . – ironsam

+0

@ironsam Ho dovuto creare la chiave Install ma aggiungere DWord di SecureRepairPolicy = 1 ha funzionato anche per me, in un'installazione di framework 4.6 che stava fallendo. :) – strattonn

2

ho ancora continuato a ottenere questo errore, anche dopo la disinstallazione KB2918614, ecc, e che, infine, fissa per me è stato quello di cambiare titolo C:\ProgramData\Microsoft\Crypto\RSA\S-1-5-18-C:\ProgramData\Microsoft\Crypto\RSA\S-1-5-18.bak per esempio. Solo allora quando si riproverà l'installazione fallita avrà successo! :)

L'installazione non riuscita ricreerà quella cartella.

ho trovato questa soluzione nella sezione commenti di this post sul blog:

Gerd Hübner 4 Sep 2015 6:15 AM #

In short: Rename the folder C:\ProgramData\Microsoft\Crypto\RSA\S-1-5-18

+1

Penso che questa sia la soluzione migliore finora (più semplice da fare). Tuttavia, è necessario eseguire prima di ogni installazione che coinvolge Windows Installer, se si verifica un riavvio. Per esempio. Ha funzionato durante l'installazione di .NET Fwk, ma è successo di nuovo dopo il riavvio e cercando di installare SQL Express 2014. Grazie. – Alexei