BootstrapperPackage在* .csproj项目中意味着什么

我正在将大量的C#项目从vs.net 2008升级到vs.net 2010 rc。 我注意到升级在* .csproj文件(包括Microsoft.NET.Framework.3.5和3.5sp1)内创build了BootstrapperPackage部分。 我想知道BootstrapperPackage是做什么的,我需要它们吗?

引导程序包是您可能需要安装.NET程序的基本组件。 你会发现它们列在Windows SDK文件夹的BootsTrapper \ Packages子目录中(VS2008的c:\ program files \ microsoft sdks \ windows \ v6.0)。 我的机器上的是:

  • DotNetFx(Xxx) – 在目标机器上安装.NET
  • Office2007PIARedist – 您的Office程序自动执行时所需的Office PIA
  • ReportViewer – 当您使用报告查看器时需要
  • Sql Server精简版 – 使用SQL Server Compact时需要
  • SqlExpress – 使用SQL Express时需要
  • VBPowerPacks – 当您使用任何VB Power Pack组件(PrintForm,Shape等)
  • vcredist(Xxx) – 当您使用任何使用/ MD的C / C ++代码时需要
  • VSTOR30 – 使用VSTO时需要
  • WindowsInstaller3_1 – 安装微星3.1(不要问)

确保安装.NET并不是真的有必要了。 其余的可能是需要的,即使这是一个CO安装。 我认为安装项目可以自动检测它们。

<BootstrapperPackage>是默认项目configuration(即: Microsoft.CSharp.targets )中的<GenerateBootstrapper>任务的BootstrapperItems参数参数的项目名称。 在这里查看MSDN的文档。

(所以名字“BootstrapperPackage”是任意的 – 这就是为什么它的文档很难find。)

GenerateBootstrapper任务创build一个“setup.exe”,在启动另一个应用程序之前检查并安装指定的先决条件。 通常,其他应用程序实际上将是一个ClickOnce清单,描述如何安装您的程序。

(ClickOnce清单被Windows安装程序打开,这就是为什么您通常会将其作为先决条件之一。)

确定find一个链接 。 它与ClickOnce有些共同点,我不需要担心。