PureBasic
PureBasic
Transition from Zip.AppendBd to Zip.AddBd
Provides instructions for replacing deprecated AppendBd method calls with AddBd.Chilkat PureBasic Downloads
IncludeFile "CkBinData.pb"
IncludeFile "CkZip.pb"
IncludeFile "CkZipEntry.pb"
Procedure ChilkatExample()
success.i = 0
zip.i = CkZip::ckCreate()
If zip.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
; ...
; ...
pathInZip.s = "example.dat"
bd.i = CkBinData::ckCreate()
If bd.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkBinData::ckLoadFile(bd,"c:/someDir/example.dat")
; ------------------------------------------------------------------------
; The AppendBd method is deprecated:
; AppendBd returns the zip entry object, which is usually not needed.
entryObj.i = CkZip::ckAppendBd(zip,pathInZip,bd)
If CkZip::ckLastMethodSuccess(zip) = 0
Debug CkZip::ckLastErrorText(zip)
CkZip::ckDispose(zip)
CkBinData::ckDispose(bd)
ProcedureReturn
EndIf
; ...
; ...
CkZipEntry::ckDispose(entryObj)
; ------------------------------------------------------------------------
; Do the equivalent using AddBd.
; Instead of returning the zip entry object, we just return success/failure.
success = CkZip::ckAddBd(zip,pathInZip,bd)
If success = 0
Debug CkZip::ckLastErrorText(zip)
CkZip::ckDispose(zip)
CkBinData::ckDispose(bd)
ProcedureReturn
EndIf
; Do the following if you need the zip entry object for what was just appended.
; The newly appended entry is the last one.
ze.i = CkZipEntry::ckCreate()
If ze.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
index.i = CkZip::ckNumEntries(zip) - 1
CkZip::ckEntryAt(zip,index,ze)
CkZip::ckDispose(zip)
CkBinData::ckDispose(bd)
CkZipEntry::ckDispose(ze)
ProcedureReturn
EndProcedure