;- ; 7Z-DIR ;- ; ZIP directory ;- ; SYNTAX ;- ; 7Z-DIR filespec ;- ; Assumes script exists/you're running from top level folder ; of list of folders to archive. ;- Dim $filespec Dim $HKCU Dim $PWD Dim $sScriptName Dim $7z Dim $sRun Dim $archname Dim $full_archname Dim $full_filespec ;- ; Initialize variables ... ;- $7z=Chr(34) & "C:\Program Files\7-Zip\7z.exe" & Chr(34) $filespec=$CmdLine[1] $archname=$filespec & '-' & @YEAR & '-' & @MON & '-' & @MDAY & '-T-' & @HOUR & '-' & @MIN & '.ZIP' $full_filespec=$filespec & '\' & '*' $sScriptName=StringLeft(@ScriptName,StringInStr(@ScriptName,'.')-1) $HKCU='HKEY_CURRENT_USER\Software\MyItzyBits\7Z-DIR' ;- ; Retrieve/set password ;- $PWD=RegRead($HKCU,'PWD') If $PWD='' Then $PWD=InputBox($sScriptName,'PWD?','','*') RegWrite($HKCU,'PWD','REG_SZ',$PWD) EndIf ;- ; Run 7-Zip ;- ; "c:\Program Files\7-Zip\7z.exe" a -ptitlwayh04s -r -tZip AdHoc-2007-04-16-T-09-30.zip AdHoc\* $sRun= _ $7z & ' ' & 'a' & _ ' ' & '-p' & $PWD & _ ' ' & '-r' & _ ' ' & '-TZip' & _ ' ' & $archname & _ ' ' & $full_filespec ;- ; Zip directory ... ;- ; Note: if run an additional time under a minute -- you'd get a duplicate ; remove the file in that event ;- $full_archname=@ScriptDir & '\' & $archname If FileExists($full_archname) Then MsgBox(4096,$sScriptName,'Newest $full_archname[' & $full_archname & '] exists -- removing.',7) FileDelete($full_archname) EndIf ;- ; Note: 'hide' specified so as not to show password ;- RunWait($sRun,'',@SW_HIDE) ;- MsgBox(4096,$sScriptName,'Newest archive[' & $archname & '] full_filespec[' & $full_filespec & ']',7)