|Important||This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here.|
Deploying Prerequisites (Visual Studio)
In order to successfully deploy an application, you must also deploy all components referenced by the application. For example, most applications created with Visual Studio 2005 have a dependency on the .NET Framework; a required version of the common language runtime must be present on the target computer before the application is installed. The deployment tools in Visual Studio 2005 enable you to install the .NET Framework and other components as a part of your installation — a practice known as bootstrapping.
The following components are included in Visual Studio 2005:
Microsoft .NET Framework 2.0
Microsoft .NET Framework 2.0 Language packs
Windows Installer 2.0
Microsoft Visual J# .NET Redistributable Package 2.0
Microsoft Visual J# .NET Redistributable Package 2.0 Language packs
Microsoft Data Access Components 9.0
Microsoft SQL Express 1.0
Crystal Reports for .NET
Microsoft Data Access Components 2.8
For both Windows Installer and ClickOnce deployment, bootstrapping of the .NET Framework is enabled by default. You can disable bootstrapping for the .NET Framework, but you should only do so if you are sure that the correct version of the Framework is already installed on all target computers or if your application does not require the Framework.
Additional components should be bootstrapped only if your application has a dependency on them.
By default, bootstrapped components are deployed from the same location as the installation package. Alternatively, you can choose to deploy the components from a URL or file share location where users can download them as necessary.
Bootstrapped components may require administrator or similar privileges on the computer in order to install. For ClickOnce applications this means that the user may need administrative permissions to install regardless of the security level specified by the application; once installed the user can run the application without administrative permissions.
During installation, users will be prompted for permission to install the bootstrapped components if they are not present on the target computer.
As an alternative to bootstrapping, you can predeploy components using an electronic software distribution system such as Microsoft Systems Management Server (SMS).