PC SOFT

ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Home | Sign in | English EN
This content has been translated automatically. Click here to view the French version.
  • Use condition
  • Compression level
  • Error codes
  • Adding a file that is already found in the archive
  • Subscript of files in the archive
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Others
Stored procedures
Adds a list of files (of any type) into an archive in ZIP, CAB, WDZ or 7z, TAR ou TGZ (TAR.GZ) format and compresses it. This function is faster than <zipArchive variable>.AddFile run for each file.
Versions 15 and later
Android This function is now available for Android applications.
New in version 15
Android This function is now available for Android applications.
Android This function is now available for Android applications.
Versions 17 and later
iPhone/iPad This function is now available for iPhone/iPad applications.
New in version 17
iPhone/iPad This function is now available for iPhone/iPad applications.
iPhone/iPad This function is now available for iPhone/iPad applications.
Versions 18 and later
Android Widget This function is now available in Android Widget mode.
WINDEVWEBDEV - Server codeWindows This function now supports the 7z format.
New in version 18
Android Widget This function is now available in Android Widget mode.
WINDEVWEBDEV - Server codeWindows This function now supports the 7z format.
Android Widget This function is now available in Android Widget mode.
WINDEVWEBDEV - Server codeWindows This function now supports the 7z format.
Versions 21 and later
WINDEVWEBDEV - Server codeWindowsLinuxiPhone/iPad This function now supports the TAR and TGZ (TAR.GZ) formats.
New in version 21
WINDEVWEBDEV - Server codeWindowsLinuxiPhone/iPad This function now supports the TAR and TGZ (TAR.GZ) formats.
WINDEVWEBDEV - Server codeWindowsLinuxiPhone/iPad This function now supports the TAR and TGZ (TAR.GZ) formats.
Versions 26 and later
Android This function is now available for Android applications.
Android Widget This function is now available in Android Widget mode.
This function is now available in iOS Widget mode.
iPhone/iPad This function is now available for iPhone/iPad applications.
This function is now available in Catalyst mode.
New in version 26
Android This function is now available for Android applications.
Android Widget This function is now available in Android Widget mode.
This function is now available in iOS Widget mode.
iPhone/iPad This function is now available for iPhone/iPad applications.
This function is now available in Catalyst mode.
Android This function is now available for Android applications.
Android Widget This function is now available in Android Widget mode.
This function is now available in iOS Widget mode.
iPhone/iPad This function is now available for iPhone/iPad applications.
This function is now available in Catalyst mode.
Example
WINDEVWEBDEV - Server codeReports and QueriesAjaxUser code (UMC)
// Create an archive and add an element
// With progress bar displayed in a Progress Bar control
MyArchive is zipArchive
NumZipErr is int
 
NumZipErr = MyArchive.Create("C:\Doc\Archive\ArchiveFile.zip")
IF NumZipErr = 0 THEN
NumZipErr = MyArchive.AddFileList("C:\doc\Image\House.BMP" + CR +  ...
"C:\My Projects\WDStock\WDStock.wdp", zipDrive, PROGBAR_Progress)
IF NumZipErr <> 0 THEN
Error(zipMsgError(NumZipErr))
END
MyArchive.Close()
ELSE
Error(zipMsgError(NumZipErr))
END
Windows Mobile
// Create an archive and add an element
// With progress bar displayed in a Progress Bar control
MyArchive is zipArchive
NumZipErr is int
 
NumZipErr = MyArchive.Create("\Doc\Archive\ArchiveFile.zip")
IF NumZipErr = 0 THEN
NumZipErr = MyArchive.AddFileList("\doc\Image\House.BMP" + CR +  ...
"\My Projects\WDStock\WDStock.wdp", zipDirectory, PROGBAR_Progress)
IF NumZipErr <> 0 THEN
Error(zipMsgError(NumZipErr))
END
MyArchive.Close()
ELSE
Error(zipMsgError(NumZipErr))
END
Syntax

Adding a list of files (files separated by CR) Hide the details

<Result> = <Archive>.AddFileList(<Path of files to add> [, <Path section to store> [, <Progress>]])
<Result>: Integer
  • 0 if the addition was performed,
  • An error code (value greater than 0) otherwise. For more details on these error codes, see the Remarks.
<Archive>: zipArchive variable
Name of a zipArchive variable that corresponds to the archive into which the files will be added.
<Path of files to add>: Character string (with quotes)
Name and path of files to add into the archive, separated by CR characters. These paths can be full paths or paths relative to the current directory. The size of each path must not exceed 260 characters.
The size of each file must not exceed 4 GB. Otherwise, an error occurs.
You cannot use wildcard characters.
Versions 18 and later
WINDEVReports and QueriesWindows MobileUser code (UMC) This parameter has the following format:
<File path> [ + TAB + <Path to store> ] + RC
If the path to store is specified, the addition will be equivalent to a file addition followed by a call to zipChangePath.
New in version 18
WINDEVReports and QueriesWindows MobileUser code (UMC) This parameter has the following format:
<File path> [ + TAB + <Path to store> ] + RC
If the path to store is specified, the addition will be equivalent to a file addition followed by a call to zipChangePath.
WINDEVReports and QueriesWindows MobileUser code (UMC) This parameter has the following format:
<File path> [ + TAB + <Path to store> ] + RC
If the path to store is specified, the addition will be equivalent to a file addition followed by a call to zipChangePath.
Windows Mobile Name and full path of the files that will be added into the archive, separated by CR characters. The size of each path must not exceed 260 characters.
<Path section to store>: Optional constant
Versions 18 and later
WINDEVWEBDEV - Server codeReports and QueriesWindows MobileAjaxUser code (UMC) Indicates the section of file paths that must be stored in the archive. This parameter is taken into account for the files for which <Path to store> was not specified.
zipNoneStores the file name and extension. For example: FileName.pdf
zipDirectoryStores the different directories found in the file path as well as the file name and extension. For example: \Directory\Files\FileName.pdf
zipDrive
(Default value)
Store the full and absolute path of file (name of disk, name of directories, file name and file extension). For example: C:\Directory\Files\FileName.pdf
For the ZIP format: This constant has no effect.
For the 7z format: This constant and zipDirectory will have the same effect
LinuxWindows Mobile This constant is not available as there is no root for the drive.

If you are using an archive in .CAB format, only the zipNone constant is taken into account. Indeed, the .CAB format cannot be used to store the paths inside the archive.
New in version 18
WINDEVWEBDEV - Server codeReports and QueriesWindows MobileAjaxUser code (UMC) Indicates the section of file paths that must be stored in the archive. This parameter is taken into account for the files for which <Path to store> was not specified.
zipNoneStores the file name and extension. For example: FileName.pdf
zipDirectoryStores the different directories found in the file path as well as the file name and extension. For example: \Directory\Files\FileName.pdf
zipDrive
(Default value)
Store the full and absolute path of file (name of disk, name of directories, file name and file extension). For example: C:\Directory\Files\FileName.pdf
For the ZIP format: This constant has no effect.
For the 7z format: This constant and zipDirectory will have the same effect
LinuxWindows Mobile This constant is not available as there is no root for the drive.

If you are using an archive in .CAB format, only the zipNone constant is taken into account. Indeed, the .CAB format cannot be used to store the paths inside the archive.
WINDEVWEBDEV - Server codeReports and QueriesWindows MobileAjaxUser code (UMC) Indicates the section of file paths that must be stored in the archive. This parameter is taken into account for the files for which <Path to store> was not specified.
zipNoneStores the file name and extension. For example: FileName.pdf
zipDirectoryStores the different directories found in the file path as well as the file name and extension. For example: \Directory\Files\FileName.pdf
zipDrive
(Default value)
Store the full and absolute path of file (name of disk, name of directories, file name and file extension). For example: C:\Directory\Files\FileName.pdf
For the ZIP format: This constant has no effect.
For the 7z format: This constant and zipDirectory will have the same effect
LinuxWindows Mobile This constant is not available as there is no root for the drive.

If you are using an archive in .CAB format, only the zipNone constant is taken into account. Indeed, the .CAB format cannot be used to store the paths inside the archive.
<Progress>: Control name or procedure name
Versions 21 and later
Progress bar management mode. This parameter can correspond to:
If you handle an archive in TAR or TGZ format (TAR.GZ), the gauge is updated only at the end of each HEX@ addition. .
WEBDEV - Server code The procedure must be a server procedure.
New in version 21
Progress bar management mode. This parameter can correspond to:
If you handle an archive in TAR or TGZ format (TAR.GZ), the gauge is updated only at the end of each HEX@ addition. .
WEBDEV - Server code The procedure must be a server procedure.
Progress bar management mode. This parameter can correspond to:
If you handle an archive in TAR or TGZ format (TAR.GZ), the gauge is updated only at the end of each HEX@ addition. .
WEBDEV - Server code The procedure must be a server procedure.

Adding a list of files found in an array Hide the details

<Result> = <Archive>.AddFileList(<List of files> [, <Progress>])
<Result>: Integer
  • 0 if the addition was performed,
  • An error code (value greater than 0) otherwise. For more details on these error codes, see the Remarks.
<Archive>: zipArchive variable
Name of a zipArchive variable that corresponds to the archive into which the files will be added.
<List of files>: Array of zipArchivedFile variables
Array of zipArchivedFile variables used to find out the characteristics of the files to add.
<Progress>: Control name or procedure name
Versions 21 and later
Progress bar management mode. This parameter can correspond to:
If you handle an archive in TAR or TGZ format (TAR.GZ), the gauge is updated only at the end of each HEX@ addition. .
WEBDEV - Server code The procedure must be a server procedure.
New in version 21
Progress bar management mode. This parameter can correspond to:
If you handle an archive in TAR or TGZ format (TAR.GZ), the gauge is updated only at the end of each HEX@ addition. .
WEBDEV - Server code The procedure must be a server procedure.
Progress bar management mode. This parameter can correspond to:
If you handle an archive in TAR or TGZ format (TAR.GZ), the gauge is updated only at the end of each HEX@ addition. .
WEBDEV - Server code The procedure must be a server procedure.
Remarks

Use condition

Adding files into an archive can be performed if:
  • The archive exists (an archive is created by <zipArchive variable>.Create).
  • The archive is accessible in read/write.
  • The archive is a single-part archive.
  • The size of the file is less than 4 GB.
Caution:
  • The full path of each file is stored in the archives in ZIP or WDZ format.
  • Archives in CAB format: The files must be added immediately after the archive creation. This format cannot be used to add files into an existing archive.
  • Archives in RAR format: This function is not available.
  • Archives in 7z format: The archive is entirely compressed whenever <zipArchive variable>.AddFileList is called.
The maximum number of files that can be included:
  • in a WDZ file: 232-1.
  • in a ZIP file: 65535.
  • in a CAB file: 65535.
Reminder:
  • LinuxiPhone/iPad Only the archives in ZIP, TAR and TGZ (TAR.GZ) format are available.
  • AndroidAndroid Widget Windows Mobile Only ZIP archives are available. Windows Mobile Only ZIP archives are available.
  • AndroidAndroid Widget The CAB format is not available.

Compression level

The files added into an archive in Zip format are compressed by default. The compression level of files added into an archive can be modified by zipCompressionLevel.

Error codes

The following error codes are returned:
  • 1: The path passed as parameter does not exist.
  • 2: Access denied: the user has no sufficient rights or the file is currently used. If the file to insert is a HFSQL data file, it must be closed by the following code:
    HClose(<File name>)
    Multitask(<Time-out>) // Waits for the effective closing of the file
  • 3: The archive is corrupted.
  • 4: The path does not exist in the archive.
  • 5: Unable to write into the archive.
  • 7: The file is already found in the archive.
  • 8: An archive cannot be added to itself. For example, "MyArchive" cannot be added to "MyArchive".
The message corresponding to the error code is returned by zipMsgError.

Adding a file that is already found in the archive

An error occurs when adding a file that is already found in the archive. A file is identified by its stored path. Therefore, two files with the same name and with the same relative path cannot be added into an archive.

Subscript of files in the archive

When a file is added into an archive, a subscript is automatically assigned to the file. This subscript corresponds to the order in which the files are included in the archive. To select a file in the archive, you can use:
  • The subscript of the element (note: the subscript of an element is returned by zipFindFile).
  • The stored path of element.
Component : wd260zip.dll
Minimum version required
  • Version 24
This page is also available for…
Comments
Click [Add] to post a comment