Click to Rate and Give Feedback
MSDN
MSDN Library
.NET Development
.NET Framework 3.5
Installer Class
Installer Methods
 Install Method
Collapse All/Expand All Collapse All
This page is specific to
Microsoft Visual Studio 2008/.NET Framework 3.5

Other versions are also available for the following:
.NET Framework Class Library
Installer..::.Install Method

When overridden in a derived class, performs the installation.

Namespace:  System.Configuration.Install
Assembly:  System.Configuration.Install (in System.Configuration.Install.dll)
Visual Basic (Declaration)
Public Overridable Sub Install ( _
    stateSaver As IDictionary _
)
Visual Basic (Usage)
Dim instance As Installer
Dim stateSaver As IDictionary

instance.Install(stateSaver)
C#
public virtual void Install(
    IDictionary stateSaver
)
Visual C++
public:
virtual void Install(
    IDictionary^ stateSaver
)
JScript
public function Install(
    stateSaver : IDictionary
)

Parameters

stateSaver
Type: System.Collections..::.IDictionary
An IDictionary used to save information needed to perform a commit, rollback, or uninstall operation.
ExceptionCondition
ArgumentException

The stateSaver parameter is nullNothingnullptra null reference (Nothing in Visual Basic).

Exception

An exception occurred in the BeforeInstall event handler of one of the installers in the collection.

-or-

An exception occurred in the AfterInstall event handler of one of the installers in the collection.

Notes to Inheritors:
  • If you override the Install method in a derived class, be sure to call the base class's Install method first in your derived method. The Install method calls the Install method of each installer contained in the Installers property of this instance. After the contained installers run, this method updates the IDictionary object (specified through the stateSaver parameter) to reflect the status of the installation. The IDictionary should be empty when passed to the Install method. If all the Install methods succeed, the Commit method is called. Otherwise, the Rollback method is called.

  • If you need to add installer instances to the Installers collection in the Install method, be sure to perform the same additions to the collection in the Uninstall method. However, you can avoid maintaining the collection in both methods if you add installer instances to the Installers collection in the class constructor for your custom installer.

The following example demonstrates the Install method of the Installer class. A class is derived from the Installer base class and the Install method is overridden.

Visual Basic
' Override the 'Install' method of the Installer class.
Public Overrides Sub Install(mySavedState As IDictionary)
   MyBase.Install(mySavedState)
   ' Code maybe written for installation of an application.
   Console.WriteLine("The Install method of 'MyInstallerSample' has been called")
End Sub 'Install
C#
// Override the 'Install' method of the Installer class.
public override void Install( IDictionary mySavedState )
{
   base.Install( mySavedState );
   // Code maybe written for installation of an application.
   Console.WriteLine( "The Install method of 'MyInstallerSample' has been called" );
}
Visual C++
   // Override the 'Install' method of the Installer class.
public:
   virtual void Install( IDictionary^ mySavedState ) override
   {
      Installer::Install( mySavedState );
      // Code maybe written for installation of an application.
      Console::WriteLine( "The Install method of 'MyInstallerSample' has been called" );
   }

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0
Tags What's this?: Add a tag
Community Content   What is Community Content?
Add new content RSS  Annotations
Install vs. Commit      Whetstone Software   |   Edit   |   Show History
When using a class derived from System.Configuration.Install.Installer in a Visual Studio Web Setup project, actions which modify the IIS metabase should be performed in the Commit method instead of the Install method. The Visual Studio Web Setup project schedules its own metabase modifications after the Install method is called in the custom installer class. It may overwrite metabase changes made earlier in the installation process.

For example, if in the Install method a custom installer creates a web application folder as a subfolder under the TARGETVDIR, it will be deleted after the Install method returns, but before the Commit method is called. (This will only be an issue with IIS 7, since it differentiates between virtual directories and web applications)

Processing
© 2009 Microsoft Corporation. All rights reserved. Terms of Use | Trademarks | Privacy Statement
Page view tracker