Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 4

Walkthrough: Creating a Custom

Action
 11/01/2012
 4 minutes to read

The following walkthrough demonstrates the process of creating a DLL custom


action to direct a user to a Web page at the end of an installation. You can use
custom actions to run code after the installation finishes.

 Note

Your computer might show different names or locations for some of the Visual
Studio user interface elements in the following instructions. The Visual Studio
edition that you have and the settings that you use determine these elements.
For more information, see Visual Studio Settings.

To create the custom action

1. On the File menu, click New Project.


2. In the New Project dialog box, select Windows, and then click Class
Library. In the Name box, type OpenWeb.

The project is added to Solution Explorer.

3. On the Project menu, click Add Class, and then in the Add New


Item dialog box, select Installer Class. Accept the default name of
Installer1, and then click Add.
4. Switch to code view by clicking click here to switch to code view on the
design surface (or by right-clicking the design surface and clicking View
Code).
5. In the Code Editor, add the following code (which opens a Web browser)
to the Installer1 code file, under the constructor.

VBCopy
<Security.Permissions.SecurityPermission(Security.Permissions.SecurityAc
tion.Demand)>
Public Overrides Sub Install(ByVal stateSaver As
System.Collections.IDictionary)
MyBase.Install(stateSaver)
End Sub

<Security.Permissions.SecurityPermission(Security.Permissions.SecurityAc
tion.Demand)>
Public Overrides Sub Commit(
ByVal savedState As System.Collections.IDictionary)

MyBase.Commit(savedState)
System.Diagnostics.Process.Start("http://www.microsoft.com")
End Sub

<Security.Permissions.SecurityPermission(Security.Permissions.SecurityAc
tion.Demand)>
Public Overrides Sub Rollback(ByVal savedState As
System.Collections.IDictionary)
MyBase.Rollback(savedState)
End Sub

<Security.Permissions.SecurityPermission(Security.Permissions.SecurityAc
tion.Demand)>
Public Overrides Sub Uninstall(ByVal savedState As
System.Collections.IDictionary)
MyBase.Uninstall(savedState)
End Sub
 Note

If you type Public Overrides and then type space, IntelliSense will provide a
list of methods and properties; you can select Commit from the list and
get the complete declaration. Repeat for the Install, Rollback, and Uninstall
methods.

6. In Solution Explorer, right-click Class1 code file, and then


click Delete (because it is unnecessary).

To add a deployment project

1. On the File menu, point to Add, and then click New Project.


2. In the Add New Project dialog box, expand the Other Project
Types node, expand the Setup and Deployment Projects, click Visual
Studio Installer, and then click Setup Project. In the Name box, type
Custom Action Installer.

The project is added to Solution Explorer and the File System Editor is


displayed.

3. In the File System Editor, select Application Folder in the left pane. On


the Action menu, point to Add, and then click Project Output.
4. In the Add Project Output Group dialog box, OpenWeb will be
displayed in the Project list. Select Primary Output.
Primary Output from OpenWeb (Active) appears in the Application
Folder.

To add the custom action

1. Select the Custom Action Installer project in Solution Explorer. On


the View menu, point to Editor, and then click Custom Actions.

The Custom Actions Editor is displayed.

2. In the Custom Actions Editor, select the Commit node. On


the Action menu, click Add Custom Action.
3. In the Select Item in Project dialog box, double-click the Application
Folder. Select Primary output from OpenWeb.

Primary output from OpenWeb appears under the Commit node in


the Custom Actions Editor.

4. In the Properties window, make sure that the InstallerClass property is


set to True (this is the default).
5. In the Custom Actions Editor, select the Install node and add Primary
output from OpenWeb to this node as you did for the Commit node.
6. On the Build menu, click Build Custom Action Installer.

To install on your development computer

 Select the Custom Action Installer project in Solution Explorer. On


the Project menu, click Install.

This will run the installer and install Custom Action Installer on your
development computer. At the end of installation, Internet Explorer should
start and should open the Microsoft.com Web site.

 Note

You must have install permissions on the computer in order to run the
installer.

To deploy to another computer

1. In Solution Explorer, right-click the setup project and click Open Folder


in Windows Explorer.
2. Navigate to the project output, and copy Custom Action Installer.msi,
Setup.exe, and all other files and subdirectories in the directory to another
computer.
 Note

To install on a computer that is not on a network, copy the files to


traditional media such as CD-ROM.

3. On the target computer, double-click Setup.exe to run the installer.

At the end of installation, Internet Explorer should start and should open
the Microsoft.com Web site.

 Note

You must have install permissions on the computer in order to run the
installer.

 Note

If the .NET Framework is not already installed on the target computer, this
deployment will install it, and this installation might take several minutes.

To uninstall the application

1. In Control Panel, double-click Add or Remove Programs.


2. In the Add or Remove Programs dialog box, select Custom Action
Installer and click Remove.

 Tip

To uninstall from your development computer, with the Custom Action


Installer project open and selected in Solution Explorer, from
the Project menu, click Uninstall.

You might also like