VBScript Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

VBScript Examples

Bounced Mail
Character Encoding
Digital Certificates
Digital Signatures
Email
FTP
HTML-to-XML
HTTP
IMAP
Encryption
MHT / HTML Email
PFX
RSA Encryption
S/MIME
Socket
Spider
String
Tar
Upload
XML
XMP
Zip Compression
Self-Extractor

More Examples...
Email Object
POP3
SMTP
Byte Array
RSS
Atom

Unreleased...
Service
PPMD
Deflate
Bzip2
LZW
Bz2
DH Key Exchange
DSA
Icon

 

 

 

 

 

 

 

Controlling filepaths within a Zip

How to control the filepaths stored within a .zip.

Download Chilkat Zip ActiveX

set zip = CreateObject("Chilkat.Zip2")

'  Any string unlocks the component for the 1st 30-days.
success = zip.UnlockComponent("Anything for 30-day trial")
If (success <> 1) Then
    MsgBox zip.LastErrorText
    WScript.Quit
End If

'  This is the directory structure on the local filesystem
'  from which we'll create .zip archives:
'  The root directory is c:\temp\filesToZip
' 
'  We have these files:
'  c:\temp\filesToZip\faxCover.doc
'  c:\temp\filesToZip\exe\Setup.exe
'  c:\temp\filesToZip\images\cheese.jpg
'  c:\temp\filesToZip\images\dude.gif
'  c:\temp\filesToZip\images\img3.gif
'  c:\temp\filesToZip\images\img4.gif
'  c:\temp\filesToZip\images\img5.gif
'  c:\temp\filesToZip\images\scream.jpg
'  c:\temp\filesToZip\images\imageInfo\scream.xml
'  c:\temp\filesToZip\images\imageInfo\cheese.xml
'  c:\temp\filesToZip\text\html\bonaireFishing.html
'  c:\temp\filesToZip\text\html\upload.html
'  c:\temp\filesToZip\text\txt\hello.txt
'  c:\temp\filesToZip\text\txt\HelloWorld123.txt
'  c:\temp\filesToZip\text\xml\hamlet.xml
'  c:\temp\filesToZip\text\xml\pigs.xml

'  There are three properties to help control the paths stored
'  within a .zip:
'  AppendFromDir
'  PathPrefix
'  DiscardPaths
' 

'  First we'll demonstrate AppendFromDir
'  When a directory tree is appended via AppendFiles or
'  AppendFilesEx, the AppendFromDir sets the base of the
'  directory tree appended (if the file pattern contains a
'  relative path, or no path at all).

'  Clear the zip object.
zip.NewZip "test1.zip"

recurse = 1

zip.AppendFromDir = "c:/temp/filesToZip"
zip.AppendFiles "*.xml",recurse

'  The zip will contain:
'  images\imageInfo\scream.xml
'  images\imageInfo\cheese.xml
'  text\xml\hamlet.xml
'  text\xml\pigs.xml

success = zip.WriteZipAndClose()
If (success <> 1) Then
    MsgBox zip.LastErrorText
    WScript.Quit
End If

'  Clear the zip object.
zip.NewZip "test2.zip"

zip.AppendFromDir = "c:/temp/filesToZip/images"
zip.AppendFiles "*.xml",recurse
zip.AppendFromDir = "c:/temp/filesToZip/text"
zip.AppendFiles "*.xml",recurse

'  The zip will contain:
'  imageInfo\scream.xml
'  imageInfo\cheese.xml
'  xml\hamlet.xml
'  xml\pigs.xml

success = zip.WriteZipAndClose()
If (success <> 1) Then
    MsgBox zip.LastErrorText
    WScript.Quit
End If

'  The PathPrefix property adds an arbitrary path prefix to each
'  file in the .zip.
'  For example:

'  Clear the zip object.
zip.NewZip "test3.zip"

zip.PathPrefix = "chilkat/"

zip.AppendFromDir = "c:/temp/filesToZip/images"
zip.AppendFiles "*.xml",recurse
zip.AppendFromDir = "c:/temp/filesToZip/text"
zip.AppendFiles "*.xml",recurse

'  The zip will contain:
'  chilkat\imageInfo\scream.xml
'  chilkat\imageInfo\cheese.xml
'  chilkat\xml\hamlet.xml
'  chilkat\xml\pigs.xml

success = zip.WriteZipAndClose()
If (success <> 1) Then
    MsgBox zip.LastErrorText
    WScript.Quit
End If

'  The DiscardPaths property removes the path from each file
'  in the zip:
'  For example:

'  Clear the zip object.
zip.NewZip "test4.zip"

zip.PathPrefix = ""
zip.DiscardPaths = 1

zip.AppendFromDir = "c:/temp/filesToZip/"
zip.AppendFiles "*",recurse

'  The zip will contain:
'  faxCover.doc
'  Setup.exe
'  cheese.jpg
'  dude.gif
'  img3.gif
'  img4.gif
'  img5.gif
'  scream.jpg
'  scream.xml
'  cheese.xml
'  bonaireFishing.html
'  upload.html
'  hello.txt
'  HelloWorld123.txt
'  hamlet.xml
'  pigs.xml

success = zip.WriteZipAndClose()
If (success <> 1) Then
    MsgBox zip.LastErrorText
    WScript.Quit
End If

'  You can combine PathPrefix with DiscardPaths:

'  Clear the zip object.
zip.NewZip "test5.zip"

zip.PathPrefix = "chilkat/"
zip.DiscardPaths = 1

zip.AppendFromDir = "c:/temp/filesToZip/"
zip.AppendFiles "*",recurse

'  The zip will contain:
'  chilkat\faxCover.doc
'  chilkat\Setup.exe
'  chilkat\cheese.jpg
'  chilkat\dude.gif
'  chilkat\img3.gif
'  chilkat\img4.gif
'  chilkat\img5.gif
'  chilkat\scream.jpg
'  chilkat\scream.xml
'  chilkat\cheese.xml
'  chilkat\bonaireFishing.html
'  chilkat\upload.html
'  chilkat\hello.txt
'  chilkat\HelloWorld123.txt
'  chilkat\hamlet.xml
'  chilkat\pigs.xml

success = zip.WriteZipAndClose()
If (success <> 1) Then
    MsgBox zip.LastErrorText
    WScript.Quit
End If

'  One last example -- combine DiscardPaths with PathPrefix
'  with multiple calls to AppendFiles:

'  Clear the zip object.
zip.NewZip "test6.zip"

zip.DiscardPaths = 1
zip.AppendFromDir = "c:/temp/filesToZip/"

'  Get all .gif files:
zip.PathPrefix = "gif/"
zip.AppendFiles "*.gif",recurse

'  Get all .jpg files:
zip.PathPrefix = "jpg/"
zip.AppendFiles "*.jpg",recurse

'  Get all .xml files:
zip.PathPrefix = "xml/"
zip.AppendFiles "*.xml",recurse

'  The zip will contain:
'  jpg\cheese.jpg
'  gif\dude.gif
'  gif\img3.gif
'  gif\img4.gif
'  gif\img5.gif
'  jpg\scream.jpg
'  xml\scream.xml
'  xml\cheese.xml
'  xml\hamlet.xml
'  xml\pigs.xml

success = zip.WriteZipAndClose()
If (success <> 1) Then
    MsgBox zip.LastErrorText
    WScript.Quit
End If

Need a specific example? Send a request to support@chilkatsoft.com

© 2003-2007 Chilkat Software, Inc. All Rights Reserved.

Mail Component · XML Parser