Это есть возможность пронестись файлами без установки какого - либо дополнительного программного обеспечения (я тестировал). Решение:
Запустите это в окне командной строки, чтобы создать ZIP-файл, C:\someArchive.zip
содержащий все файлы в папке C:\test3
:
CScript zip.vbs C:\test3 C:\someArchive.zip
Где файл zip.vbs
содержит:
' Get command-line arguments.
Set objArgs = WScript.Arguments
Set FS = CreateObject("Scripting.FileSystemObject")
InputFolder = FS.GetAbsolutePathName(objArgs(0))
ZipFile = FS.GetAbsolutePathName(objArgs(1))
' Create an empty ZIP file.
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)
' Required to let the ZIP command execute
' If this script randomly fails or the ZIP file is not complete,
' just increase to more than 2 seconds
wScript.Sleep 2000
Я не проверял его на пути и имена файлов, содержащие пробелы. Это может работать, если кавычки помещаются вокруг параметров командной строки.
Как это работает: встроенная функция zip в Windows (Windows XP и более поздние версии?) Предоставляется через COM- интерфейсы из оболочки Windows, explorer.exe - то есть части «Shell.Application». Этот интерфейс COM можно использовать из сценария VBScript, поскольку такой сценарий может обращаться к компонентам COM. Чтобы сделать скрипт полностью автономным, он создает пустой ZIP-файл для начала (можно также создать пустой ZIP-файл и скопировать его в целевую систему вместе со сценарием VBScript).
VBScript был установлен по умолчанию в каждой версии Microsoft Windows для настольных компьютеров, начиная с Windows 98.
CScript.exe
является частью Windows Script Host . Windows Script Host распространяется и устанавливается по умолчанию в Windows 98 и более поздних версиях Windows. Он также устанавливается, если установлен Internet Explorer 5 (или более поздняя версия).