Sample code for 30+ languages & platforms
Tcl Requires Chilkat v11.0.0+

Transition from Zip.AppendNew to Zip.AddEmpty

Provides instructions for replacing deprecated AppendNew method calls with AddEmpty.

Chilkat Tcl Downloads

Tcl

load ./chilkat.dll

set success 0

set zip [new_CkZip]

#  ...
#  ...
set pathInZip "example.dat"

#  ------------------------------------------------------------------------
#  The AppendNew method is deprecated:

# entryObj is a CkZipEntry
set entryObj [CkZip_AppendNew $zip $pathInZip]
if {[CkZip_get_LastMethodSuccess $zip] == 0} then {
    puts [CkZip_lastErrorText $zip]
    delete_CkZip $zip
    exit
}

#  ...
#  ...

delete_CkZipEntry $entryObj

#  ------------------------------------------------------------------------
#  Do the equivalent using AddEmpty.

#  Indicate the newly appended entry is not a directory entry.
set isDir 0

set success [CkZip_AddEmpty $zip $isDir $pathInZip]
if {$success == 0} then {
    puts [CkZip_lastErrorText $zip]
    delete_CkZip $zip
    exit
}

#  Do the following if you need the zip entry object for what was just appended.
#  The newly appended entry is the last one.
set ze [new_CkZipEntry]

set index [expr [CkZip_get_NumEntries $zip] - 1]
CkZip_EntryAt $zip $index $ze

delete_CkZip $zip
delete_CkZipEntry $ze