Тема: VBScript: работа с CAB архивами
Бесплатный COM-сервер jsCAB Component предоставляет методы для работы с CAB файлами: создание и распаковка, получение информации о файле и преобразование самораспаковывающегося EXE CAB файла в нормальный CAB файл. Дистрибутив (архив) компонента имеет размер около 80 Кб. Пример:
Set oCAB = CreateObject("jsCAB.Ops")
' создание архива:
suc = oCAB.MakeCABFile("C:\Temp\test.cab", "C:\Temp\test1.jpg|C:\Temp\test2.jpg")
' получение информации об архиве:
Set oInfo = oCAB.GetCABInfo("C:\Temp\test.cab")
WScript.Echo oInfo.Path
WScript.Echo oInfo.IsValidCAB ' 0 - normal, 1 - InstallShield CAB, 2 - not a CAB
WScript.Echo oInfo.Solitary ' True - stand-alone CAB
' обход содержимого:
For i = 0 to oInfo.FileCount - 1
WScript.Echo oInfo.FileName(i) ' имя файла
WScript.Echo oInfo.FileDate(i) ' дата изменения
WScript.Echo oInfo.FileSize(i) ' размер в Кб
Next
WScript.Echo oInfo.FileExists("test2.jpg") ' проверка существования файла
' ещё один способ обхода содержимого:
For i = 0 to UBound(oInfo.FileList)
WScript.Echo oInfo.FileName(i)
Next
For Each el In oInfo.FileList
WScript.Echo el
Next
' извлечение из архива указанного файла:
suc = oCAB.ExtractSingleFile("C:\Temp\test.cab", "C:\Temp\Testing", "test1.jpg")
' распаковка архива:
suc = oCAB.ExtractCABFiles("C:\Temp\test.cab", "C:\Temp\Testing")
См. также WSH: архивация файлов средствами операционной системы (WinXP).
В названии ветки всегда должен быть указан язык программирования или среда исполнения скрипта, если это возможно.