是否可以安全删除C:\ Windows \ Installer中的* .msi和* .msp文件,但注册表中未提及?


31

我的C:\Windows\Installer文件夹已超过10 GB。我注意到某些* .msi和* .msp文件位于C:\ Windows \ Installer中,但未在注册表中提及(例如,我可以在C:\ Windows \ Installer中看到名为“ 104a0288.msi”的文件,但正在搜索注册表编辑器中的“ 104a0288.msi”没有任何结果)。我可以安全地删除那些文件吗?

我使用Windows 7 SP1 x64 Ultimate。

Answers:


22

下面的文章显示了从Installer文件夹删除未使用的Microsoft Installer /补丁文件的不同方法。这是一篇非常好的描述性文章。

从Windows Installer文件夹安全删除未使用的MSI和MSP文件的3种方法

总之,这是3种方式:

  1. 使用MsiZap(由Microsoft提供)这是旧的Microsoft实用程序。不幸的是不再支持,但仍被人们使用。由于不再支持该工具,因此使用此工具需要您自担风险。可以在这里找到。

  2. 使用一个名为WICleanup的工具(由KZTechs提供),这是我使用的选项,它为我清除了15Gb的数据,此后我再也没有任何问题。我将在文章中添加一些注意事项,以供参考。

首先,我在下载链接时遇到了麻烦,因此我在这里找到了可下载的实用程序。

然后,在使用UI删除文件时,您必须先确认每次删除,然后再出现确认提示。即“您确定要删除吗?是/否?” 然后单击“文件已删除。确定”。我有数百个文件,而这并不是我想要为每个文件做的事情。

该zip下载文件包含一个UI可执行文件和一个命令行可执行文件。要使用命令行版本,请确保以管理员身份打开命令提示符。然后导航到exe所在的位置并执行以下命令wicleanupc -s。“ s”使文件的删除保持静默,无需确认。

  1. 手动删除(不建议)最后一个选项主要是手动的,但不建议使用。为了弄清楚是否可以删除文件,注册表中不应存在该文件。可能会有一些有用的脚本来指导您找到可以删除或不能删除的文件,但是实际的删除是手动的,因此容易出错或误删除。

2
尽管此链接可以回答问题,但最好在此处包括答案的基本部分,并提供链接以供参考。如果链接的页面发生更改,仅链接的答案可能会失效。
G-Man说'恢复莫妮卡'

感谢您对@ G-Man的评论,我添加了更多详细信息,并从使用其中一种选项的经验中获得了一些个人注释。希望它能高兴:)
PostureOfLearning 2015年

看起来这里有很多答案,我不会再添加一个。实际上是非常安全的方法:support.microsoft.com/default.aspx? scid=kb;zh-CN;290301-Windows Installer清理,直到完成。另一种方法:删除。它有效,我已经测试过了。我的/ installer /是空的,没有任何影响。
凌驾于

上面Overmind提到的页面不再存在。但是,我使用了WiCleanup,它在Windows 7上运行良好。非常感谢您提供的技巧。
Yaba


8

C:\ Windows \ Installer是Windows Installer存储用于当前已安装程序的安装程序包(.msi)和安装程序修补程序(.msp)的缓存副本的位置。如果要更新,修改或卸载计算机上的程序,则需要这些文件。不要盲目删除它们。

有时,您可能会在此目录中得到孤立的.msi或.msp文件,但无法正确清理它们。当安装失败时,通常会发生这种情况。可以使用称为Msizap的工具将其删除,但是请注意,Microsoft不再支持它。

只能将Msizap下载为与Microsoft Windows SDK一起安装的Windows Installer开发人员Windows SDK组件的一部分。安装完成后,您可以使用以下命令从C:\ Windows \ Installer中删除孤立的安装程序

“%PROGRAMFILES%\ Windows Installer Cleanup \ msizap.exe”!g

这是使用信息,以获取更多详细信息:http : //msdn.microsoft.com/zh-cn/library/windows/desktop/aa370523%28v=vs.85%29.aspx

老实说,除非您对硬盘空间很挑剔,否则我不会担心10gb的安装程序会在那里坐。这很可能表明,是时候重新安装Windows,以使您的计算机与购买当天一样快地运行。对于2年以上安装的Windows,10gb非常典型。


4
不幸的是,我的C:\ Windows \ Installer需要〜32GB。Microsoft应该考虑保持Windows文件夹的清洁。我不是在谈论GAC,WinSXS和.Net安装文件夹。他们通常像特工史密斯一样在Matrix中成长:)
Aram Paronikyan

5
Windows普通用户遇到操作系统问题的典型方法。向他们扔更多硬件或重新安装。
Avio 2015年

7

MsiZap只发现了一个孤立的msi,节省了100 MB的内存。之后,我尝试了PatchCleaner并清理了20 GB。

PatchCleaner用了大约20分钟的时间来解析30 GB的Windows Installer缓存(严重时是MSFT,wtf),然后单击一下就能释放20 GB。

太棒了


0

我自己,我太谨慎了以至于无法删除甚至“未注册”的安装程序文件。但是,我想我会与我希望整理一下一些机器的同事分享我的经验(基于这篇文章和类似的帖子)。

$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
  • 您应该能够删除这些文件而没有任何风险。* .msi文件仅在安装程序或更新期间使用。在理想情况下,安装程序会自动清除它们。如果可以删除它们,请这样做。-我很确定Windows是否会告诉您它们是否仍在使用中。

谢谢,其中一些文件不是也用于卸载吗?
Franck Dernoncourt 2014年

好吧,弗兰克-也许我误解了你的一些问题。-我只是指* .msi文件。-您不应该删除子文件夹中的卸载程序。
伊曼2014年

很高兴知道,谢谢,抱歉,我认为根文件夹中的某些.msi文件也用于卸载程序。
Franck Dernoncourt 2014年

没错,它们可以用于安装,但是它们不是必需的,并且如果丢失,系统也不会崩溃。如果需要,大多数* .msi和* .msp文件都用于卸载Windows更新。
伊曼2014年
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.