Sample code for 30+ languages & platforms
Visual FoxPro

Transition from ZipEntry.NextEntry to ZipEntry.GetNext

Provides instructions for replacing deprecated NextEntry method calls with GetNext.

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loZip
LOCAL loEntry
LOCAL lnFinished
LOCAL loNext
LOCAL loZe
LOCAL lnEntryValid

lnSuccess = 0

* ------------------------------------------------------------------------
* The NextEntry method is deprecated.
* See below or code showing how to rewrite using EntryAt/GetNext

loZip = CreateObject('Chilkat.Zip')

lnSuccess = loZip.OpenZip("qa_data/zips/xml_files.zip")
IF (lnSuccess <> 1) THEN
    ? loZip.LastErrorText
    RELEASE loZip
    CANCEL
ENDIF

loEntry = loZip.FirstEntry()
IF (loZip.LastMethodSuccess = 0) THEN
    ? "This zip archive is empty."
    RELEASE loZip
    CANCEL
ENDIF

lnFinished = 0
DO WHILE lnFinished = 0

    IF (loEntry.IsDirectory = 0) THEN
        ? loEntry.FileName
    ELSE
        ? "(directory) " + loEntry.FileName
    ENDIF

    loNext = loEntry.NextEntry()
    IF (loEntry.LastMethodSuccess = 0) THEN
        lnFinished = 1
    ENDIF

    RELEASE loEntry
    loEntry = loNext
ENDDO

loZip.CloseZip()

? "----"

* ------------------------------------------------------------------------
* Do the equivalent using EntryAt/GetNext.

lnSuccess = loZip.OpenZip("qa_data/zips/xml_files.zip")

loZe = CreateObject('Chilkat.ZipEntry')
loZip.EntryAt(0,loZe)

lnEntryValid = 1
DO WHILE lnEntryValid = 1

    IF (loZe.IsDirectory = 0) THEN
        ? loZe.FileName
    ELSE
        ? "(directory) " + loZe.FileName
    ENDIF

    lnEntryValid = loZe.GetNext()
ENDDO

loZip.CloseZip()

RELEASE loZip
RELEASE loZe