Everything is pointless from a certain perspective.

utena.egloos.com

포토로그




windows의 installer에 있는 *.msp 중 안쓰는거 지우기 스크립트 나중에 다시 찾아볼 것들

installer 디렉토리 안에 있는 파일들의 크기가 쓸데없이 큰 주제에 많기까지 해서 청소하고싶어서 구글질을 해보면 어딘가에서 전해내려오는 WiMsps.vbs 파일이 찾아지는데, 이 파일은 사용중인 msp만 알려주는 게 끝

그렇다고 알차게 가공하긴 귀찮으니까, 적당히 손봐서 안쓰는 msp파일을 지워주는 배치파일로 만들었는데...시험해보진 않았음(..)

사용법 : 아무데서나 실행시켜서 나온 runme.bat을 아무데서나 실행시키면 됨
전제 : msp파일은 C:\Windows\Installer 에 있어야 함

Dim msi : Set msi = CreateObject("WindowsInstaller.Installer")

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.CreateTextFile("runme.bat", True)

objFile.WriteLine "md C:\WINDOWS\Installer\haven"


Dim products : Set products = msi.Products
Dim productCode

For Each productCode in products
Dim patches : Set patches = msi.Patches(productCode)
Dim patchCode

For Each patchCode in patches
' Get the local patch location
Dim location : location = msi.PatchInfo(patchCode, "LocalPackage")
'objFile.WriteLine productCode & ", " & patchCode & ", " & location
objFile.WriteLine "move /y " & location & " C:\WINDOWS\Installer\haven"

Next
Next


objFile.WriteLine "del /f C:\WINDOWS\Installer\*.msp"
objFile.WriteLine "move C:\WINDOWS\Installer\haven\*.msp C:\WINDOWS\Installer\"
objFile.WriteLine "rd C:\WINDOWS\Installer\haven"