我有一个需要从 CD 运行的 .NET WinForms 应用程序。我需要弄清楚的是,用户是否需要安装 .NET 版本或在必要时安装而不是在安装后运行应用程序。我发现的有关引导的任何信息都涉及应用程序的设置和安装。如果我不安装任何东西,我该怎么做?我会appeciate任何信息..
最佳答案
我也想过很长一段时间不制作安装程序就无法做到这一点,但事实并非如此。
有一个 msbuild 操作,称为 "GenerateBootstrapper" 。
如果您在 Visual Studio 中:
然后您可以以不同的方式添加 GenerateBootstrapper 操作(取决于您要安装的内容)。 MSDN 给出了一个 .NET 2.0 的例子:
<ItemGroup>
<BootstrapperFile Include="Microsoft.Net.Framework.2.0">
<ProductName>Microsoft .NET Framework 2.0</ProductName>
</BootstrapperFile>
</ItemGroup>
<Target Name="BuildBootstrapper">
<GenerateBootstrapper
ApplicationFile="WindowsApplication1.application"
ApplicationName="WindowsApplication1"
ApplicationUrl="http://mycomputer"
BootstrapperItems="@(BootstrapperFile)"
OutputPath="C:\output" />
</Target>
我没有尝试过这个例子,但我自己尝试过,我可以告诉你,为了在 XP 机器上安装 .NET 4 Client Profile(这是今天最新的稳定 .NET 版本),你需要安装 Windows Imaging Component第一的。这就是 VS2010 中包含的标准 .NET4 Client Profile 先决条件在 XP 上失败的原因。所以我写了 my own bootstrapper 。
您可以下载我的示例 VS2010 解决方案,它为控制台应用程序创建 bootstrap 。
但它要求您安装(只需复制)我的 bootstrap 。所以这里是步骤:
关于.NET Bootstrap 无需设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/512452/