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

Transition from Zip.GetEntryByName to Zip.EntryOf

Provides instructions for replacing deprecated GetEntryByName method calls with EntryOf.

Chilkat PureBasic Downloads

PureBasic
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.txt"

    ;  ------------------------------------------------------------------------
    ;  The GetEntryByName method is deprecated:

    entryObj.i = CkZip::ckGetEntryByName(zip,pathInZip)
    If CkZip::ckLastMethodSuccess(zip) = 0
        Debug CkZip::ckLastErrorText(zip)
        CkZip::ckDispose(zip)
        ProcedureReturn
    EndIf

    ;  ...
    ;  ...

    CkZipEntry::ckDispose(entryObj)

    ;  ------------------------------------------------------------------------
    ;  Do the equivalent using EntryOf.
    ;  Your application creates a new, empty ZipEntry object which is passed 
    ;  in the last argument and filled upon success.

    ze.i = CkZipEntry::ckCreate()
    If ze.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    success = CkZip::ckEntryOf(zip,pathInZip,ze)
    If success = 0
        Debug CkZip::ckLastErrorText(zip)
        CkZip::ckDispose(zip)
        CkZipEntry::ckDispose(ze)
        ProcedureReturn
    EndIf



    CkZip::ckDispose(zip)
    CkZipEntry::ckDispose(ze)


    ProcedureReturn
EndProcedure