Question

Am I required to install Visual Studio 2008 in order to build a bootstrapper for my msi installer?

I don't have VS2008 installed on my build server, and I'd rather not install it just to generate this one bootstrapper, but it appears that the required bootstrapper files (setup.bin, the Microsoft SDKs folder, etc) are included in the VS setup.

Was it helpful?

Solution

I just ended up copying the files from my dev box to the build server. That worked fine.

Installing the Windows SDK didn't help, as the bootstrapper isn't part of the SDK even though that's where the files are located.

OTHER TIPS

It should be possible to install the Windows SDK on your build server which includes the bootstrapper.

In order to build Visual Studio setup and deployment projects you will need to have VS installed. However, you can use an MSBuild script to build the bootstrapper without VS (a good combination would be to use WiX for your MSI and MSBuild to create the bootstrapper). You will need to use the GenerateBootstrapper task (the following would output a localized bootstrapper installing the .NET Framework):

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <ItemGroup>
        <BootstrapperFile Include="Microsoft.Net.Framework.2.0">
                <ProductName>.NET Framework 2.0</ProductName>
        </BootstrapperFile>
        <BootstrapperFile Include="Microsoft.Windows.Installer.3.1">
                <ProductName>Windows Installer 3.1</ProductName>
        </BootstrapperFile>
    </ItemGroup>

    <Target Name="Bootstrapper">
        <GenerateBootstrapper ApplicationFile="mySetup.msi" 
            Culture="de-DE" 
            ApplicationName="My Application" 
            OutputPath="$(OutDir)\de-DE" 
            BootstrapperItems="@(BootstrapperFile)" 
            Path="C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\" />

        <GenerateBootstrapper ApplicationFile="mySetup.msi" 
            Culture="en-US" 
            ApplicationName="My Application" 
            OutputPath="$(OutDir)\en-US" 
            BootstrapperItems="@(BootstrapperFile)" 
            Path="C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages\" />
    </Target>
</Project>

These related questions might be helpful:

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top