Архивирование ZIP используя Windows VBS
Ни для кого не секрет, что Windows позволяет работать с ZIP архивами как с папками, однако нет такой команды, чтобы просто взять и заархивировать файлы с помощью Windows. Обычно для этой цели раньше я использовал утилиты, наподобие Zip, WinZip, 7zip и др., но недавно в сети нашел и оптимизировал код VBS, с помощью которого можно делать ZIP архивы.
Использование:
cscript zip.vbs c:\тут-путь-до-папки-которую-надо-архивировать\ c:\путь\название-архива.zip
Ну и сам код соответственно:
Set objArgs = WScript.Arguments
InputFolder = objArgs(0)
ZipFile = objArgs(1)
CreateObject("Scripting.FileSystemObject").CreateTextFile(ZipFile, True).Write "PK" & Chr(5) & Chr(6) & String(18, vbNullChar)
Set objShell = CreateObject("Shell.Application")
Set source = objShell.NameSpace(InputFolder).Items
objShell.NameSpace(ZipFile).CopyHere(source)
Do Until objShell.NameSpace(ZipFile).Items.Count = objShell.NameSpace(InputFolder).Items.Count
WScript.Sleep 500 ' Arbitrary polling delay
Loop