This example demonstrates how to test the integrity of the files contained within the the zip file "c:\Test\zip.zip".
The first function of the following code starts the test. For this example, nothing is specified in the FilesToProcess property, so all files inside the zip file will be tested. In this example we call TestZipFile with the bCheckCompressedData parameter set to True, so that the actual compressed data is checked too, not just the zip file's structure and file headers. The second function below is a handler written for the TestingFile event that displays (in a listbox) the filename of each file being tested, along with some other of the file's information. The third function below is a handler written for the Warning event, that adds detailed information about any encountered errors into the same listbox. The code assumes you have placed a button, a listbox and an Xceed Zip control on a form, and named them Button1, ListBox1 and XceedZip1 respectively.
We start with the handler for the button's click event. The code will start the testing.
Visual Basic |
Copy Code |
Sub Command1_Click()
Dim ResultCode As xcdError
Call XceedZip1.License( "your license key" )
' Set the name and path of the zip file to test XceedZip1.ZipFilename = "c:\test\zip.zip"
' Start testing the file (we use True here so that we also test the actual compressed data, not just the zip file's structure) ResultCode = XceedZip1.TestZipFile(True)
' Check the return value
If ResultCode <> xerSuccess Then MsgBox "Unsuccessful. Error #" & Str(ResultCode) & " occurred. " & "Description: " & _ XceedZip1.GetErrorDescription(xvtError, ResultCode) Else MsgBox "The tested zip file is completely error-free." End If End Sub |
Here's the handler for the TestingFile event. It will add each tested file's name and info to the listbox.
Visual Basic |
Copy Code |
Private Sub XceedZip1_TestingFile(ByVal sFilename As String, ByVal sComment As String, _ ByVal lSize As Long, ByVal lCompressedSize As Long, _ ByVal nCompressionRatio As Integer, _ ByVal xAttributes As XceedZipLibCtl.xcdFileAttributes, _ ByVal lCRC As Long, ByVal dtLastModified As Date, _ ByVal dtLastAccessed As Date, ByVal dtCreated As Date, _ ByVal xMethod As XceedZipLibCtl.xcdCompressionMethod, _ ByVal bEncrypted As Boolean, ByVal lDiskNumber As Long)
List1.AddItem "Now testing file: " & sFilename List1.AddItem " Uncompressed Size: " & lSize List1.AddItem " Compressed Size : " & lCompressedSize List1.AddItem " Compression Ratio: " & nCompressionRatio List1.AddItem "" End Sub |
Here's the handler for the Warning event. It adds information about encountered errors to the listbox.
Visual Basic |
Copy Code |
Private Sub XceedZip1_Warning(ByVal sFilename As String, ByVal xWarning As XceedZipLibCtl.xcdWarning)
List1.AddItem "Warning for file '" & sFilename & "'): & XceedZip1.GetErrorDescription(xvtWarning, xWarning)
End Sub |