System.Configuration.Install Namespace

The System.Configuration.Install namespace provides classes that allow you to write custom installers for your own components. The Installer class is the base class for all custom installers in the.NET Framework. Through the Installer.Installers property, an installer contains a collection of other installers as children. As the installer is executed, it cycles through its children and calls System.Configuration.Install.Installer.Install, System.Configuration.Install.Installer.Commit, System.Configuration.Install.Installer.Rollback, or System.Configuration.Install.Installer.Uninstall. For an example of an object in the Installers collection, see EventLogInstaller. The Context property contains information about the installation. For example, information about the location of the log file for the installation, the location of the file that saves information required by the Uninstall method, and the command line that was entered when the installation executable was run. For an example of an installation executable, see Installer Tool (Installutil.exe). The Install, Commit, Rollback, and Uninstall methods are not always called on the same instance of Installer. For example, you might use an Installer to install and commit an application, and then release the reference to that Installer. Later, uninstalling the application creates a new reference to an Installer, which means that the Uninstall method is called on a different instance of Installer. For this reason, do not save the state of a computer in an installer. Instead, use an IDictionary that is preserved across calls and passed into the Install, Commit, Rollback, and Uninstall methods.

Public classAssemblyInstallerLoads an assembly, and runs all the installers in it.
Public classComponentInstallerSpecifies an installer that copies properties from a component to use at install time.
Public classInstallContextContains information about the current installation.
Public classInstallerProvides the foundation for custom installations.
Public classInstallerCollectionContains a collection of installers to be run during an installation.
Public classInstallEventArgsProvides data for the events: BeforeInstall, AfterInstall, Committing, Committed, BeforeRollback, AfterRollback, BeforeUninstall, AfterUninstall.
Public classInstallExceptionThe exception that is thrown when an error occurs during the commit, rollback, or uninstall phase of an installation.
Public classManagedInstallerClass 
Public classTransactedInstallerDefines an installer that either succeeds completely or fails and leaves the computer in its initial state.

Public interfaceIManagedInstaller 

Public delegateInstallEventHandlerRepresents the method that will handle the BeforeInstall, AfterInstall, Committing, Committed, BeforeRollback, AfterRollback, BeforeUninstall, or AfterUninstall event of an Installer.

Public enumerationUninstallActionSpecifies what an installer should do during an uninstallation.