Sample code for 30+ languages & platforms
DataFlex

Transition from Zip.GetEntryByID to Zip.EntryById

Provides instructions for replacing deprecated GetEntryByID method calls with EntryById.

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Boolean iSuccess
    Handle hoZip
    Integer iId
    Variant vEntryObj
    Handle hoEntryObj
    Variant vZe
    Handle hoZe
    String sTemp1
    Boolean bTemp1

    Move False To iSuccess

    Get Create (RefClass(cComChilkatZip)) To hoZip
    If (Not(IsComObjectCreated(hoZip))) Begin
        Send CreateComObject of hoZip
    End

    // ...
    // ...
    Move 123 To iId

    // ------------------------------------------------------------------------
    // The GetEntryByID method is deprecated:

    Get ComGetEntryByID Of hoZip iId To vEntryObj
    If (IsComObject(vEntryObj)) Begin
        Get Create (RefClass(cComChilkatZipEntry)) To hoEntryObj
        Set pvComObject Of hoEntryObj To vEntryObj
    End
    Get ComLastMethodSuccess Of hoZip To bTemp1
    If (bTemp1 = False) Begin
        Get ComLastErrorText Of hoZip To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    // ...
    // ...

    Send Destroy of hoEntryObj

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

    Get Create (RefClass(cComChilkatZipEntry)) To hoZe
    If (Not(IsComObjectCreated(hoZe))) Begin
        Send CreateComObject of hoZe
    End
    Get pvComObject of hoZe to vZe
    Get ComEntryById Of hoZip iId vZe To iSuccess
    If (iSuccess = False) Begin
        Get ComLastErrorText Of hoZip To sTemp1
        Showln sTemp1
        Procedure_Return
    End



End_Procedure