'Declaration Public Event DiskRequired As DiskRequiredEventHandler
'Usage Dim instance As ZipEvents Dim handler As DiskRequiredEventHandler AddHandler instance.DiskRequired, handler
public event DiskRequiredEventHandler DiskRequired
Event Data
The event handler receives an argument of type DiskRequiredEventArgs containing data related to this event. The following DiskRequiredEventArgs properties provide information specific to this event.
Property | Description |
---|---|
Action | Gets or sets a value indicating if the current operation should be aborted or if it should attempt to continue. |
CurrentItem | (Inherited from Xceed.FileSystem.FileSystemEventArgs) |
DiskNumber | Gets the number of the next required disk. |
Reason | Gets a DiskRequiredReason value indicating the reason why a new disk is required. |
SplitSize | Gets or sets a value representing the size, in bytes, of the next split part to be created in the case where the zip file is being split (not necessarily spanned). |
TargetItem | (Inherited from ) |
UserData | (Inherited from ) |
ZipFile | Gets or sets the next zip file to write to or read from. |
Example
The following example demonstrates how to create a spanned zip file.
Imports Xceed.Zip Imports Xceed.FileSystem Dim source As New DiskFolder( "c:\windows\fonts" ) Dim WithEvents zipEvents As New ZipEvents() AddHandler zipEvents.DiskRequired, AddressOf Me.OnDiskRequired Dim zip As New ZipArchive( zipEvents, Nothing, New DiskFile( "a:\test.zip" ) ) zip.AllowSpanning = true source.CopyFilesTo( zip, true, true ) ' This method will handle the DiskRequired events that are raised. ' ' The code contained within this method is the suggested implementation to use when spanning. Private Sub OnDiskRequired( ByVal sender As Object, ByVal e As DiskRequiredEventArgs ) If e.Action = DiskRequiredAction.Fail Then If MessageBox.Show( "Disk #" + e.DiskNumber.ToString() + " is required.", _ "Disk Required", _ MessageBoxButtons.OKCancel ) = DialogResult.OK Then e.Action = DiskRequiredAction.Continue Else e.Action = DiskRequiredAction.Fail End If End If End Sub
using Xceed.Zip; using Xceed.FileSystem; DiskFolder source = new DiskFolder( @"c:\windows\fonts" ); ZipEvents zipEvents = new ZipEvents(); zipEvents.DiskRequired += new DiskRequiredEventHandler( this.OnDiskRequired ); ZipArchive zip = new ZipArchive( zipEvents, null, new DiskFile( @"a:\test.zip" ) ); zip.AllowSpanning = true; source.CopyFilesTo( zip, true, true ); // This method will handle the DiskRequired events that are raised. // // The code contained within this method is the suggested implementation to use when spanning. private void OnDiskRequired( object sender, DiskRequiredEventArgs e ) { if( e.Action == DiskRequiredAction.Fail ) { if( MessageBox.Show( "Disk #" + e.DiskNumber.ToString() + " is required.", "Disk Required", MessageBoxButtons.OKCancel ) == DialogResult.OK ) e.Action = DiskRequiredAction.Continue; else e.Action = DiskRequiredAction.Fail; } }
Requirements
Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
See Also