如何删除Add Remove Programs删不掉的程序

讨厌windows在c:\windows下放好多没用的东西,一个原因是总是ghost C盘,这样哪天洁癖发作或者被病毒搞了,直接ghost回来。于是就删删删,把C弄的比较小。经常删的或者挪地方的有:

  • \pagefile.sys
  • \hibernate.sys
  • \MSOCache*
  • \Windows目录下:
    • $hg_mig$
    • $NtUninstallKb*$
    • Intaller
    • ie7
    • Driver Cache
    • ServicePackFiles
    • SoftwareDistribution\Download
    • system32\dllcache

这样大概能删掉至少1G的东西。有的东西不能删的,就在d盘建一个目录,用junction.exe(大约等于unix下的ln,sysinternals suite里面有)把它link过来。比如据说$hg_mig$就不能随便删。否则,windows update据说会有问题。

Installer目录也不能随便搞——我就总是因为搞它出问题。一次是安装新版的live messenger,旧版的因为我把Installer目录下的msp文件删了,无法卸载,新的也就没法装。重新安装一会也不行。很抓狂。不过这不算什么,我们总是可以蛮力删文件,并且改注册表——反正messenger的注册表项不是很多。但是今天遇到了一个麻烦的事情,装了office 2k3的sp3,然后删掉了msocache,并且不小心把installer目录弄没了——我junction到D盘了,但是不知怎么的内容没有了。于是每次启动outlook,MSI installer都跳出来,然后说某个安装盘找不到blah blah,很是piss off。卸载,没戏。直接安装覆盖?还是没戏。蛮力卸载?MS Knowledge base里也有,只是太麻烦了。不过还好,有万能的google。微软提供了一个windows installer cleanup tool,这个可以在installer数据库里删除某个程序的安装信息,就当这个程序没装过一样,然后就可以重新安装这个程序了。如果想卸载,那也没有任何问题。很好,很强大。

Windows installer cleanup tool: http://support.microsoft.com/kb/290301

发表评论

电子邮件地址不会被公开。 必填项已用*标注