ApplicationDeployment.DownloadFileGroupCompleted イベント
アセンブリ: System.Deployment (system.deployment.dll 内)

Dim instance As ApplicationDeployment Dim handler As DownloadFileGroupCompletedEventHandler AddHandler instance.DownloadFileGroupCompleted, handler
public: event DownloadFileGroupCompletedEventHandler^ DownloadFileGroupCompleted { void add (DownloadFileGroupCompletedEventHandler^ value); void remove (DownloadFileGroupCompletedEventHandler^ value); }

DownloadFileGroupCompleted イベントは、メイン アプリケーション スレッドで呼び出されます。このコールバックでアプリケーションの Windows フォーム コントロールを直接呼び出すことはスレッド セーフです。
このコールバックに提供される、AsyncCompletedEventArgs の Error プロパティをチェックします。このプロパティが null 参照 (Visual Basic では Nothing) の場合は、ダウンロードが成功しており、null 参照 (Visual Basic では Nothing) でない場合は、インストールに失敗しています。この詳細情報は、Error プロパティで確認できます。
DownloadFileGroupAsync メソッドによってダウンロードを開始した場合は、UserState プロパティを使用して、渡したステータス情報にアクセスできます。

ヘルプ ファイルのグループをバックグラウンドでダウンロードするコード例を次に示します。この例では、Windows フォーム アプリケーションを配置し、このアプリケーションに StatusStrip コントロールを含め、このコントロールに downloadStatus という名前の ToolStripStatusPanel コントロールを含める必要があります。
Dim WithEvents ADDownloadHelpFiles As ApplicationDeployment Private Sub DownloadHelpFiles(ByVal GroupName As String) If (ApplicationDeployment.IsNetworkDeployed) Then ADDownloadHelpFiles = ApplicationDeployment.CurrentDeployment If ADDownloadHelpFiles.IsFirstRun Then Try If ADDownloadHelpFiles.IsFileGroupDownloaded(GroupName) Then ADDownloadHelpFiles.DownloadFileGroupAsync(GroupName) End If Catch ioe As InvalidOperationException MessageBox.Show("This application is not a ClickOnce application.") Return End Try End If End If End Sub Sub ADDownloadHelpFiles_DownloadFileGroupProgressChanged(ByVal sender As Object, ByVal e As DeploymentProgressChangedEventArgs) Handles ADDownloadHelpFiles.DownloadFileGroupProgressChanged DownloadStatus.Text = String.Format("Downloading file group {0}; {1:D}K of {2:D}K completed.", e.Group, e.BytesCompleted / 1024, e.BytesTotal / 1024) End Sub Sub ADDownloadHelpFiles_DownloadFileGroupCompleted(ByVal sender As Object, ByVal e As DownloadFileGroupCompletedEventArgs) Handles ADDownloadHelpFiles.DownloadFileGroupCompleted DownloadStatus.Text = String.Format("Download of file group {0} complete.", e.Group) End Sub
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); }
void LaunchAppUpdate() { if (ApplicationDeployment::IsNetworkDeployed) { ApplicationDeployment^ ad = ApplicationDeployment::CurrentDeployment; ad->UpdateCompleted += gcnew AsyncCompletedEventHandler(this, &Form1::LaunchAppUpdate_UpdateCompleted); ad->UpdateAsync(); } } void LaunchAppUpdate_UpdateCompleted(Object^ sender, AsyncCompletedEventArgs^ e) { if (!e->Cancelled) { if (nullptr != e->Error) { System::Windows::Forms::DialogResult dr = MessageBox::Show( "The application has been updated. Restart?", "Restart Application", MessageBoxButtons::OKCancel); if (System::Windows::Forms::DialogResult::OK == dr) { Application::Restart(); } } else { // Replace with your own error reporting or logging. MessageBox::Show( "The application encountered an error in " + "downloading the latest update. Error: {0}", e->Error->Message); } } else { // Replace with your own error reporting or logging. MessageBox::Show( "The update of the application's latest version was " + "cancelled."); } }

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
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からApplicationDeployment.DownloadFileGroupCompleted イベントを検索する場合は、下記のリンクをクリックしてください。

- ApplicationDeployment.DownloadFileGroupCompleted イベントのページへのリンク