Xbase++
Xbase++
Determine if a Zip is Encrypted or Password-Protected
See more Zip Examples
Determines whether or not a zip archive is AES encrypted or password-protected.Chilkat Xbase++ Downloads
LOCAL nSuccess
LOCAL oZip
LOCAL nBPwdProt
LOCAL nEncValue
nSuccess := 0
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
oZip := CreateObject("Chilkat.Zip")
// An encrypted or password-protected zip can be opened
// without specifying the password. However, the contents
// of the files cannot be unzipped without providing the correct
// password.
nSuccess := oZip:OpenZip("something.zip")
IF (nSuccess != 1)
? oZip:LastErrorText
oZip:destroy()
RETURN
ENDIF
// If the zip is password-protected, meaning that it uses
// the old (insecure) Zip 2.0 encryption, then the
// PasswordProtect property will be 1
nBPwdProt := oZip:PasswordProtect
IF (nBPwdProt)
? "This zip is password-protected."
ENDIF
// If the zip is AES encrypted (WinZip compatible) then
// the Encryption property will be equal to 4.
nEncValue := oZip:Encryption
IF (nEncValue == 4)
? "This zip is AES encrypted."
ENDIF
// If the Encryption property = 0, then the zip is NOT
// strong encrypted, and is either password-protected or
// entirely unencrypted, depending on the value of the
// PasswordProtect property.
oZip:CloseZip()
oZip:destroy()