Visual Basic 6.0
Visual Basic 6.0
Create a ZIP Archive with a Top-Level Directory Using PathPrefix
This example demonstrates how to use the PathPrefix
property to ensure that all files in a ZIP archive are stored beneath a
common top-level directory.
The example recursively adds files from:
c:/zipTest/directory_name
And stores them in the ZIP archive beneath:
directory_name/
For example, the local filesystem file:
c:/zipTest/directory_name/hello.txt
Will be stored in the ZIP archive as:
directory_name/hello.txt
This is useful when creating ZIP archives that should extract into a single parent directory rather than directly into the current extraction location.
The example also demonstrates that methods such as
AppendFiles initially add references to filesystem files,
and that the actual file reading and compression occur later when
WriteZipAndClose is called.
Chilkat Visual Basic 6.0 Downloads
Dim success As Long
success = 0
Dim zip As New ChilkatZip
' Initialize the Zip object and set the output filename.
' The .zip file is not created until WriteZip or WriteZipAndClose is called.
success = zip.NewZip("qa_output/test.zip")
If (success = 0) Then
Debug.Print zip.LastErrorText
Exit Sub
End If
' Prepend "directory_name/" to each ZIP entry added after this point.
'
' For example, a file found at:
'
' c:/zipTest/directory_name/hello.txt
'
' Will be stored in the ZIP as:
'
' directory_name/hello.txt
'
' This is useful when you want the files to unzip beneath a specific
' top-level directory.
zip.PathPrefix = "directory_name/"
' Recursively add references to all files beneath:
'
' c:/zipTest/directory_name
'
' AppendFiles does not immediately read or compress the files.
' It adds references to files in the local filesystem.
' The referenced files are read and compressed when WriteZipAndClose is called.
Dim recurse As Long
recurse = 1
success = zip.AppendFiles("c:/zipTest/directory_name/*",recurse)
If (success = 0) Then
Debug.Print zip.LastErrorText
Exit Sub
End If
' Write the ZIP archive and close it.
success = zip.WriteZipAndClose()
If (success = 0) Then
Debug.Print zip.LastErrorText
Exit Sub
End If
Debug.Print "Success."