System.Deployment.Application Namespace

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

Classes

ApplicationDeployment

Supports updates of the current deployment programmatically, and handles on-demand downloading of files. This class cannot be inherited.

CheckForUpdateCompletedEventArgs

Represents detailed update information obtained through a call to CheckForUpdateAsync().

CompatibleFramework

Represents a version of the .NET Framework where an application can install and run.

CompatibleFrameworkMissingException

This exception is thrown when a version of the .NET Framework that is compatible with this application cannot be found.

CompatibleFrameworks

Provides details about versions of the .NET Framework on which this application can install and run.

DependentPlatformMissingException

The exception that is thrown when the platform dependency is not found during activation of the ClickOnce deployment and the deployment will not run.

DeploymentDownloadException

Indicates that there was an error downloading either the ClickOnce manifests or the deployment's files to the client computer.

DeploymentException

Defines a base class for all deployment-related exceptions.

DeploymentProgressChangedEventArgs

Represents progress data reported in an asynchronous operation.

DeploymentServiceCom

Provides internal services for the ClickOnce deployment API.

DownloadApplicationCompletedEventArgs

Provides data for the DownloadApplicationCompleted event.

DownloadFileGroupCompletedEventArgs

Describes a file download that has recently completed.

DownloadProgressChangedEventArgs

Provides data for the DownloadProgressChanged event.

GetManifestCompletedEventArgs

Provides data for the GetManifestCompleted event of InPlaceHostingManager.

InPlaceHostingManager

Install or update a ClickOnce deployment on a computer.

InvalidDeploymentException

Indicates that ClickOnce could not read either the deployment or application manifests.

SupportedRuntimeMissingException

This exception is thrown when a runtime version that is compatible with this application cannot be found.

TrustNotGrantedException

Indicates that the application does not have the appropriate level of trust to run on the local computer.

UpdateCheckInfo

Represents detailed update information obtained through a call to CheckForDetailedUpdate().

Enums

DeploymentProgressState

Specifies the current stage of a ClickOnce download operation.

Delegates

CheckForUpdateCompletedEventHandler

Represents the method that will handle the CheckForUpdateCompleted event of an ApplicationDeployment.

DeploymentProgressChangedEventHandler

Represents the method that will handle the CheckForUpdateProgressChanged event, UpdateProgressChanged event, or DownloadFileGroupProgressChanged event of an ApplicationDeployment.

DownloadFileGroupCompletedEventHandler

Represents the method that will handle the DownloadFileGroupCompleted event of an ApplicationDeployment.

Remarks

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.