ApplicationDeployment.DownloadFileGroupCompleted Event
Assembly: System.Deployment (in system.deployment.dll)
The DownloadFileGroupCompleted event is called on the main application thread. It is thread safe to call your application's Windows Forms controls directly within this callback.
Check the Error property of the AsyncCompletedEventArgs supplied to this callback. If this property is a null reference (Nothing in Visual Basic), the download was successful; if it is not a null reference (Nothing in Visual Basic), the installation did not succeed, and you can find more details on this through the Error property.
If you initiated the download with the DownloadFileGroupAsync method, you can use the UserState property to access any state information you passed in.
The following code example downloads a group of help files in the background. The example requires that you are deploying a Windows Forms application, and that this application contains a StatusStrip control, and it contains a ToolStripStatusPanelcontrol name downloadStatus.
private void DownloadFileGroupAsync(string fileGroup) { if (ApplicationDeployment.IsNetworkDeployed) { ApplicationDeployment deployment = ApplicationDeployment.CurrentDeployment; try { if (deployment.IsFileGroupDownloaded(fileGroup)) { deployment.DownloadFileGroupProgressChanged += new DeploymentProgressChangedEventHandler(deployment_DownloadFileGroupProgressChanged); deployment.DownloadFileGroupCompleted += new DownloadFileGroupCompletedEventHandler(deployment_DownloadFileGroupCompleted); deployment.DownloadFileGroupAsync(fileGroup); } } catch (InvalidOperationException ioe) { MessageBox.Show("This application is not a ClickOnce application. Error: " + ioe.Message); return; } } } void deployment_DownloadFileGroupProgressChanged(object sender, DeploymentProgressChangedEventArgs e) { downloadStatus.Text = String.Format("Downloading file group {0}; {1:D}K of {2:D}K completed.", e.Group, e.BytesCompleted / 1024, e.BytesTotal / 1024); } void deployment_DownloadFileGroupCompleted(object sender, DownloadFileGroupCompletedEventArgs e) { if (e.Error != null) { downloadStatus.Text = "Could not download files. Will try again later."; return; } else if (e.Cancelled) { downloadStatus.Text = "The file download has been cancelled."; return; } downloadStatus.Text = String.Format("Download of file group {0} complete.", e.Group); }
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.