PC SOFT

ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Home | Sign in | English EN
  • Properties specific to the description of zipArchive variables
  • Functions that use zipArchive variables:
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
The zipArchive type is used to handle an archive file corresponding to one of the following formats: ZIP, CAB, RAR, WDZ, 7z, TAR or TGZ (TAR.GZ). The characteristics of this file can be defined and changed using different WLanguage properties.
Remark: For more details on the declaration of this type of variable and the use of WLanguage properties, see Declaring a variable.
New in version 28
Universal Windows 10 App This type of variable is now available in Universal Windows 10 App mode.
Example
// Create a backup archive for the "My Documents" directory
MyArchive is zipArchive
 
// Protect the archive by a password
MyArchive.Password = "secret"
 
// Create the archive
zipCreate(MyArchive, "s:\Backups\" + DateToString(DateSys(), "YYYY-MM-DD") + ".zip")
 
// Add the files
zipAddDirectory(MyArchive, SysDir(srMyDocuments))
 
// Close the archive
zipClose(MyArchive)
Remarks

Properties specific to the description of zipArchive variables

The following properties can be used to handle a zipArchive variable:
NameType usedEffect
ArchiveFormatInteger constantFormat of the archive file:
  • zipFormatCAB: File in CAB format
  • zipFormatRAR: File in RAR format
  • zipFormatWDZ: File in WDZ format
  • zipFormatZIP: File in ZIP format
  • zipFormat7Z: File in 7z format
  • zipFormatTAR: File in TAR format
  • zipFormatTARGZ: File in TGZ (TAR.GZ) format.
CompressedSize8-byte integerTotal compressed size of the files found in the archive.
This property is read-only.
CompressionLevelIntegerCompression level that must be used to add files into the archive.
For more details, see zipCompressionLevel.
FileArray of zipArchivedFileArray of files found in the archive.
NbFileIntegerNumber of files found in the archive.
This property is read-only.
NbPartIntegerNumber of parts in a multi-volume archive.
For a single-volume archive, this property is equal to 1.
This property is read-only.
PasswordCharacter stringPassword that will be used to add files into the archive or to extract files from the archive.
For more details, see zipPassword.
This property is available in write mode.
7z format: No password can be used.
TAR and TGZ (TAR.GZ) format: No password can be used.
Size8-byte integerTotal size of the files found in the archive (decompressed size).
This property is read-only.

Functions that use zipArchive variables:

zipAddFileAdds a file (of any type) into an archive in CAB, ZIP, WDZ and 7z, TAR or TGZ (TAR.GZ) format and compresses it.
zipAddFileListAdds a list of files (of any type) into an archive in ZIP, CAB, WDZ or 7z format and compresses it.
zipAddDirectoryAdds all the files found in a directory and in its subdirectories into an archive and compresses them.
zipChangePathModifies the stored path of a file in an archive (in ZIP, WDZ or 7z format).
zipFindFileFinds a file in an archive (in CAB, ZIP, RAR, WDZ or 7z format).
zipCreateCreates an archive.
zipCreateExeCreates a self-extracting archive as a 32-bit executable (.EXE).
zipSplitSplits an archive into several sub-archives of a given size.
zipIsMultiReturns the type of archive: single-part archive or multi-part archive.
zipExistUsed to find out whether an archive exists.
zipExtractPathReturns the path of a file found in the archive.
zipExtractFileExtracts a file from an archive and automatically decompresses it to a physical location or in memory.
zipExtractFileListExtracts and decompresses a list of files found in an archive to a physical location.
zipExtractAllExtracts all files from an archive and decompresses them.
zipCloseCloses an archive.
zipCurrentFileReturns the name of the archived file currently handled by the functions for adding and extracting files.
zipInfoFileReturns the characteristics of a file found an archive:
  • The name of the file and its stored path.
  • The initial size of the file.
  • The compressed size of file.
  • The date and time of file creation.
  • The date and time of file modification.
  • The date and time of file access.
  • The file attributes.
  • The file encryption mode.
zipListFileReturns the list of files found in an archive.
zipPasswordDefines the password used to add files into the specified archive and to extract files from the specified archive (RAR, ZIP and WDZ format).
zipNbFileReturns the number of files found in an archive (in CAB, RAR, ZIP, WDZ or 7z format).
zipNbPartReturns the number of sub-archives (parts) found in an archive in CAB, RAR, ZIP, WDZ, 7z, TAR or TGZ (TAR.GZ) format.
zipNbPartNeededReturns the number of parts of a given size required to split a single-part archive.
zipCompressionLevelChanges the compression level used when creating an archive in ZIP format or in 7z format.
zipOpenOpens an existing archive.
zipOpenCABOpens an existing archive in CAB format.
zipOpenRAROpens an existing archive in RAR format.
zipMergeMerges the different sub-archives found in a multi-part archive to create a single-part archive.
zipDeleteFileDeletes a file from an archive.
zipDeleteFileListDeletes a list of files from an archive.
zipDeleteAllDeletes all files from an archive.
zipSizeReturns the size of archive (in ZIP, RAR, CAB, WDZ or 7z format):
  • the size of all compressed files found in the archive.
  • the size of all files found in the archive before compression.
zipFileSizeReturns the size of one of the files found in the archive (in CAB, RAR, WDZ, ZIP, 7z, TAR or TGZ (TAR.GZ) format):
  • the compressed size of the file.
  • the size of file before compression.
Minimum version required
  • Version 15
This page is also available for…
Comments
Function: Buffer to Serialize Array String, after Zip file with crypt
PROCEDURE SerializaCompactaArquivo(Token, bufArquivoBinario)

//Serializar
bufArquivoBinario = Crypt(bufArquivoBinario,Token,cryptAnsi,encodeBASE64)

NomeArquivoTxt is string = "Buffer"+DateSys()+TimeSys() + ".txt"
NomeArquivoZip is string = "Buffer"+DateSys()+TimeSys() + "zip"

fDelete(NomeArquivoTxt)
fDelete(NomeArquivoZip)

fSaveBuffer(NomeArquivoTxt,bufArquivoBinario)

NumZipErr is int

NumZipErr = zipCreate("Pacote", NomeArquivoZip)

IF NumZipErr <> 0 THEN
Error(zipMsgError(NumZipErr))
END

NumZipErr = zipAddFile("Pacote", NomeArquivoTxt, zipNone)

IF NumZipErr <> 0 THEN
Error(zipMsgError(NumZipErr) + "On the file " + zipCurrentFile("Pacote"))
END

zipCompressionLevel("Pacote", 9)

ok is boolean

IF fFileExist(NomeArquivoZip) THEN
ok = True
bufArquivoBinario = fLoadBuffer(NomeArquivoZip)
bufArquivoBinario = Crypt(bufArquivoBinario,Token,cryptAnsi,encodeBASE64)
ELSE
ok = False
bufArquivoBinario = ""
END

RESULT(bufArquivoBinario)
BOLLER
07 Jun. 2017