What does BootstrapperPackage mean inside the *.csproj project

c#, msbuild, visual-studio-2010

Solution

Bootstrapper packages are the basic components you might need to get a .NET program installed. You'll find them listed in the BootsTrapper\Packages subdirectory of the Windows SDK folder (c:\program files\microsoft sdks\windows\v6.0 for VS2008). The ones on my machine are:

- DotNetFx(Xxx) - installs .NET on the target machine

- Office2007PIARedist - the Office PIA, required when you automate Office programs

- ReportViewer - required when you use report viewer

- Sql Server Compact Edition - required when you use SQL Server Compact

- SqlExpress - required when you use SQL Express

- VBPowerPacks - required when you use any VB Power Pack component (PrintForm, Shape etc)

- vcredist(Xxx) - required when you used any C/C++ code that uses /MD

- VSTOR30 - required when you used VSTO

- WindowsInstaller3_1 - installs MSI 3.1 (don't ask)

Making sure that .NET is installed isn't really necessary anymore today. The rest of them might however be required, even if this is a CO install. I think a Setup project can autodetect them reliably.

Problem

I am upgrading lots of C# projects from vs.net 2008 to vs.net 2010 rc. I notice that the upgrade creates a BootstrapperPackage section inside the *.csproj file (include Microsoft.NET.Framework.3.5 and 3.5sp1). I wonder what the BootstrapperPackage does and do I need them?

Original source