2014-11-02 18:32:18 +0000 2014-11-02 18:32:18 +0000
32
32

Czy mogę bezpiecznie usunąć pliki *.msi i *.msp, które znajdują się w C:WindowsInstaller, ale nie są wymienione w rejestrze?

Mój folder C:\Windows\Installer powiększył się do ponad 10 GB. Zauważyłem, że niektóre pliki *.msi i *.msp znajdują się w C:\Windows\Installer, ale nie są wymienione w rejestrze (np. widzę plik o nazwie “104a0288.msi” w C:\Windows\Installer, ale wyszukiwanie “104a0288.msi” w edytorze rejestru nie przynosi żadnych wyników). Czy mogę bezpiecznie usunąć te pliki?

Używam Windows 7 SP1 x64 Ultimate.

Odpowiedzi (4)

23
23
23
2015-03-12 08:24:37 +0000

Poniższy artykuł przedstawia różne sposoby usuwania nieużywanych plików Microsoft Installer/Patch z folderu Installer. Jest to bardzo dobry i opisowy artykuł. 3 Ways to Safely Delete Unused MSI and MSP Files from Windows Installer Folder

Podsumowując, są to 3 sposoby:

  1. Użyj MsiZap (by Microsoft) Jest to stare narzędzie Microsoftu. Niestety nie jest już wspierane, ale nadal używane przez ludzi. Ponieważ nie jest już wspierane, używasz tego narzędzia na własne ryzyko. Można go znaleźć tutaj .

  2. Użyj narzędzia o nazwie WICleanup (przez KZTechs) Jest to opcja, której użyłem i wyczyściła mi 15Gb danych i od tego czasu nie miałem żadnych problemów. Jest kilka uwag, które chciałbym dodać do artykułu na temat jego użycia;

Po pierwsze, miałem problem z linkiem do pobrania, więc znalazłem narzędzie do pobrania tutaj .

Następnie, podczas usuwania plików za pomocą interfejsu użytkownika musisz potwierdzić każde usunięcie, po którym następuje monit o potwierdzenie. Tzn. “Czy na pewno chcesz usunąć? Tak/Nie?”, a następnie “Plik został usunięty. OK”. Miałem setki plików i nie było to coś, co chciałem zrobić dla każdego z nich.

Pobrany plik zip ma plik wykonywalny UI, a także plik wykonywalny wiersza poleceń. Aby użyć wersji wiersza poleceń, upewnij się, że otworzysz wiersz poleceń jako administrator. Następnie przejdź do miejsca, w którym znajduje się plik exe i wykonaj następujące polecenie wicleanupc -s Znak “s” sprawia, że usuwanie plików jest ciche i nie trzeba potwierdzać.

  1. Ręczne usuwanie (niezalecane) Ostatnia opcja jest w dużej mierze ręczna, ale niezalecana. Aby dowiedzieć się, czy plik może zostać usunięty, NIE powinien on istnieć w rejestrze. Mogą być dostępne przydatne skrypty, które poprowadzą Cię do plików, które mogą lub nie mogą być usunięte, ale faktyczne usuwanie jest ręczne i dlatego jest podatne na błędy lub usunięcia przez pomyłkę.
7
7
7
2017-08-05 21:13:02 +0000

MsiZap wykrył tylko jeden osierocony msi, co dało oszczędność 100 MB. Po tym spróbowałem PatchCleaner i wyczyściłem 20 GB. PatchCleaner zajął około 20 minut, aby przetworzyć 30 GB pamięci podręcznej Windows Installer (poważnie, MSFT, wtf), a następnie jednym kliknięciem był w stanie uwolnić 20 GB.

Brawo.

0
0
0
2017-11-29 16:18:59 +0000

Ja sam jestem zbyt ostrożny, aby faktycznie usuwać nawet “niezarejestrowane” pliki instalatorów. Pomyślałem jednak, że podzielę się tym, co przygotowałem (na podstawie tego i podobnych postów) dla współpracownika, który chciał uporządkować kilka maszyn.

$Registered = Get-ItemPropertyValue -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Patches\* -Name LocalPackage
$Found = Get-ChildItem "$env:WINDIR\Installer\*" -Include *.msp,*.msi -Recurse | Select-Object -ExpandProperty FullName

# Show difference
Compare-Object $Registered $Found

$Unregistered = $InstallersFound | Where-Object {$_ -notin $InstallersRegistered}

# Total Bytes unregistered
$Unregistered | Get-ChildItem | Measure-Object -Sum -Property Length

# Remove unregistered installers
$Unregistered | Remove-Item -WhatIf
-4
-4
-4
2014-11-03 00:50:00 +0000
  • Powinieneś być w stanie usunąć te pliki bez żadnego risc. Pliki .msi są używane tylko podczas instalacji programu lub aktualizacji. W idealnym świecie instalator wyczyściłby je automatycznie. Jeśli możesz je usunąć, to zrób to. - Jestem prawie pewien, że Windows powie ci, czy są one nadal używane.