PowerShell Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CMFCDelphiFoxProJavaPerl
PHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

PowerShell Examples

Bounced Email
Digital Certificates
Digital Signatures
DSA
Email Object
Encryption
FTP
HTML Conversion
HTTP
IMAP
MHT / HTML Email
POP3
RSA
MIME
SMTP
Socket
SOCKS Proxy
Spider
SSH Key
SSH
SFTP
Tar
Upload
XML
XMP
Zip


More Examples...
Amazon S3
NTLM
RSS
Atom
PPMD
Deflate
Bzip2
LZW
Diffie-Hellman
Bz2
Character Encoding
CSV

 

 

 

 

 

 

 

 

(PowerShell) Controlling Paths of Files Added to Zip

When appending files to a .zip, it can be difficult to get the paths exactly as you want them. This example describes a way that you can control the path information when adding a single file at a time to a .zip.

Download: Chilkat .NET Assemblies

[Reflection.Assembly]::LoadFile("C:\myAssemblies\ChilkatDotNet2.dll")

$zip = New-Object Chilkat.Zip

$success = $zip.UnlockComponent("anything for 30-day trial")
if ($success -ne $true) {
    $("Failed to unlock zip component")
    exit
}

#  Intialize the zip object by calling NewZip.
$zip.NewZip("myZip.zip")

#  Add a reference to a file on disk to the zip object.
#  (When appending files to a zip, the files are not actually
#  read into memory.  References to the file(s) are added.
#  When WriteZip is called, the referenced files are streamed in
#  and compressed to the .zip.)
$saveExtraPath = $false
$success = $zip.AppendOneFileOrDir("/temp/a/hamlet.xml",$saveExtraPath)
#  For brevity, this example will not check the return status...

#  The saveExtraPath argument, if set, will cause the path information
#  passed in the 1st argument to be saved in the .zip.

#  To add "a/hamlet.xml", do this:
$zip.AppendFromDir = "/temp"
$saveExtraPath = $true
$success = $zip.AppendOneFileOrDir("a/hamlet.xml",$saveExtraPath)

#  To add "temp/a/hamlet.xml", do this:
$zip.AppendFromDir = "/"
$saveExtraPath = $true
$success = $zip.AppendOneFileOrDir("temp/a/hamlet.xml",$saveExtraPath)

#  The zip written here will contain hamlet.xml three times,
#  each with a different relative path.
$success = $zip.WriteZipAndClose()

© 2000-2011 Chilkat Software, Inc. All Rights Reserved.