Using the Bootstrapper Manifest Generator download from
here[
^] and the product xml and package xml that is for the regular Crystal Reports bootstrap I muddled together a new bootstrap package that seems to work. I haven't fully tested it yet, so there could be plenty of problems with it.
I couldn't find a good tutorial on the Bootstrapper Manifest Generator and how to use all of the different inputs for and what they did or how they correspond to the final product and package xml documents. The best tutorial I found was this one:
http://jcrawfor74.wordpress.com/2008/02/27/bootstrap-manifest-generator-how-to-custom-pre-requisites/[
^]
In case anyone is trying to accomplish the same, here is the product xml that I ended up with:
="1.0"="utf-8"
<Product ProductCode="Crystal.Reports.2008.x86.Only" xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper">
<PackageFiles CopyAllPackageFiles="false">
<PackageFile Name="crredist2008_x86.msi" HomeSite="http://resources.businessobjects.com/support/downloads/redistributables/vs_2008/redist/x86/CRRedist2008_x86.msi" PublicKey="key was here" />
</PackageFiles>
<RelatedProducts>
<DependsOnProduct Code="Microsoft.Net.Framework.2.0" />
</RelatedProducts>
<InstallChecks>
<MsiProductCheck Property="CRVSInstalled" Product="{AA467959-A1D6-4F45-90CD-11DC57733F32}" />
<MsiProductCheck Property="CRVSRunTimex86Installed" Product="{CE26F10F-C80F-4377-908B-1B7882AE2CE3}" />
</InstallChecks>
<Commands Reboot="Defer">
<Command PackageFile="crredist2008_x86.msi" Arguments="/norestart" EstimatedInstalledBytes="21000000" EstimatedInstallSeconds="300">
<InstallConditions>
<BypassIf Property="CRVSInstalled" Compare="ValueGreaterThan" Value="0" />
<BypassIf Property="CRVSRunTimex86Installed" Compare="ValueGreaterThan" Value="0" />
<FailIf Property="AdminUser" Compare="ValueEqualTo" Value="false" String="AdminRequired" />
<FailIf Property="VersionNT" Compare="ValueLessThan" Value="5.00" String="InvalidPlatformWinNT" />
</InstallConditions>
<ExitCodes>
<ExitCode Value="0" Result="Success" />
<ExitCode Value="1641" Result="SuccessReboot" />
<ExitCode Value="3010" Result="SuccessReboot" />
<DefaultExitCode Result="Fail" String="Anunexpectedexitcodewasr" FormatMessageFromSystem="true" />
</ExitCodes>
</Command>
</Commands>
</Product>