System.Deployment.Application Namespace

Note: This namespace is new in the .NET Framework version 2.0.

With the System.Deployment.Application namespace, you can program custom upgrade behavior into your ClickOnce application.

The key class in this namespace is ApplicationDeployment. You can test whether your deployment has an available update by using either the CheckForUpdate or CheckForUpdateAsync methods; the latter method raises the CheckForUpdateCompleted event when it has successfully completed. CheckForDetailedUpdate returns important information about the update, such as its version number and whether it is a required update for current users. If an update is available, you can install it by using Update or UpdateAsync; the latter method raises the UpdateCompleted event after installation of the update is finished. For large updates, you can receive progress notifications through the CheckForUpdateProgressChanged and UpdateProgressChanged events, and use the information in ProgressChangedEventArgs to notify the user of the download status.

You can also use ApplicationDeployment to download large files and assemblies on demand. These files must be marked as "optional" within the deployment's application manifest, so that they are not downloaded at installation. You can download the files at any point during the application's duration by using the DownloadFileGroup or DownloadFileGroupAsync methods. You can download assemblies before they are loaded into memory by supplying an event handler for the AssemblyResolve event on the AppDomain class. For more information, see Walkthrough: Downloading Assemblies On Demand with the ClickOnce Deployment API Using the Designer.

Public classApplicationDeploymentSupports updates of the current deployment programmatically, as well as on-demand downloads of files. This class cannot be inherited.
Public classCheckForUpdateCompletedEventArgsRepresents detailed update information obtained through a call to CheckForUpdateAsync.
Public classDependentPlatformMissingExceptionIndicates that the platform dependency was not found during activation of the ClickOnce deployment, and that the deployment will not run.
Public classDeploymentDownloadExceptionIndicates that there was an error downloading either the ClickOnce manifests or the deployment's files to the client computer.
Public classDeploymentExceptionDefines a base class for all deployment-related exceptions.
Public classDeploymentProgressChangedEventArgsRepresents progress data reported in an asynchronous operation.
Public classDeploymentServiceComProvides internal services for the ClickOnce deployment API.
Public classDownloadApplicationCompletedEventArgsProvides data for the DownloadApplicationCompleted event.
Public classDownloadFileGroupCompletedEventArgsDescribes a file download that has recently completed.
Public classDownloadProgressChangedEventArgsProvides data for the DownloadProgressChanged event.
Public classGetManifestCompletedEventArgsProvides data for the GetManifestCompleted event.
Public classInPlaceHostingManagerManages a ClickOnce deployment.
Public classInvalidDeploymentExceptionIndicates that ClickOnce could not read either the deployment or application manifests.
Public classTrustNotGrantedExceptionIndicates that the application does not have the appropriate level of trust to run on the local computer.
Public classUpdateCheckInfoRepresents detailed update information obtained through a call to CheckForDetailedUpdate.

Public delegateCheckForUpdateCompletedEventHandlerRepresents the method that will handle the CheckForUpdateCompleted event of an ApplicationDeployment.
Public delegateDeploymentProgressChangedEventHandlerRepresents the method that will handle the CheckForUpdateProgressChanged event, UpdateProgressChanged event, or DownloadFileGroupProgressChanged event of an ApplicationDeployment.
Public delegateDownloadFileGroupCompletedEventHandlerRepresents the method that will handle the DownloadFileGroupCompleted event of an ApplicationDeployment.

Public enumerationDeploymentProgressStateSpecifies the current stage of a ClickOnce download operation.

Community Additions