SAP Knowledge Base Article - Public

1353836 - How to add Crystal Reports 2008 Runtime SP1 package as a prerequisite in a Visual Studio .NET setup project?

Symptom

  • Setup and Deployment 
  • CRRuntime_12_1_mlb.exe
  • How to add the Crystal Reports 2008 Runtime SP1 package as a prerequisite for a Visual Studio .NET setup and deployment project

Reproducing the Issue

  • Crystal Reports 2008 SP1
  • CRRuntime_12_1_mlb.exe
  • Visual Studio .NET 2005
  • or, Visual Studio .NET 2008

Resolution

The Crystal Reports 2008 SP1 merge modules are dependent on the Visual C++ 2005 SP1 library files. You can add the Crystal Reports 2008 Runtime SP1 install as a setup project prerequisite if you don't want to use the Crystal Reports 2008 SP1 merge modules. Follow the directions below if you want to add the Crystal runtime package as a prerequisite for Visual Studio .NET 2005 or 2008.

Visual Studio .NET 2005

  1. Download the Crystal Reports 2008 SP1 redistribution package from the SAP download site here, https://smpdl.sap-ag.de/~sapidp/012002523100006561812009E/cr2008sp1_redinst_rfrsh.zip
  2. Open cr2008sp1_redinst_rfrsh.zip and extract CRRuntime_12_1_mlb.exe to C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages\CrystalReports 12.0\.
  3. Make a backup copy of product.xml from the ..\BootStrapper\Packages\CrystalReports 12.0\ directory. 
  4. Open the product.xml file for editing with Notepad.
  5. Edit the file so it matches the product.xml file shown below.
    1. Note: You'll need to enter your own keycode next to pidkey so your users are not prompted for a keycode.
  6. Open the setup project in Visual Studio .NET 2005.
  7. Right click on the setup project name in the solution explorer and select Properties. 
  8. Click on the Prerequisites button.
  9. Select Crystal Reports 2008 and .NET Framework 2.0.
  10. Select Download prerequisites from the same location as my application.
  11. Click Ok.
  12. Click Ok.
  13. Build your setup project, then copy all the setup files to a clean client and install.

Visual Studio .NET 2008

  1. Download the Crystal Reports 2008 SP1 redistribution package from the SAP download site here, https://smpdl.sap-ag.de/~sapidp/012002523100006561812009E/cr2008sp1_redinst_rfrsh.zip
  2. Open cr2008sp1_redinst_rfrsh.zip and extract CRRuntime_12_1_mlb.exe to C:\Program Files\Microsoft SDKs\Windows\v6.0A\BootStrapper\Packages\CrystalReports 12.0\.
  3. Make a backup copy of product.xml from the ..\BootStrapper\Packages\CrystalReports 12.0\ directory. 
  4. Open the product.xml file for editing with Notepad.
  5. Edit the file so it matches the product.xml file shown below.
    1. Note: You'll need to enter your own keycode next to pidkey so your users are not prompted for a keycode.
  6. Open the setup project in Visual Studio .NET 2008.
  7. Right click on the setup project name in the solution explorer and select Properties. 
  8. Click on the Prerequisites button.
  9. Select Crystal Reports 2008 and .NET Framework 3.5.
  10. Select Download prerequisites from the same location as my application.
  11. Click Ok.
  12. Click Ok.
  13. Build your setup project, then copy all the setup files to a clean client and install.

product.xml
Note: Important sections are highlighted in red.

<?xml version="1.0" encoding="utf-8" ?> 
<Product
  xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper"
  ProductCode="BusinessObjects.CrystalReports12.NET.2.0"
>
  <!-- Defines list of files to be copied on build -->
  <PackageFiles>
    <PackageFile Name="CRRuntime_12_1_mlb.exe" />
  </PackageFiles>
  <RelatedProducts>
    <DependsOnProduct Code="Microsoft.Net.Framework.2.0" />
    <DependsOnProduct Code="Microsoft.Data.Access.Components.2.8" />
  </RelatedProducts>
  <InstallChecks>
    <RegistryCheck Property="CRBuildNum" Key="HKLM\SOFTWARE\Business Objects\Suite 12.0\Crystal Reports" Value="BuildNum" />
  </InstallChecks>
  <Commands Reboot="Defer">
    <Command PackageFile="CRRuntime_12_1_mlb.exe"
      Arguments=' /quiet pidkey=A1234-B123456-C123456-D123'
      EstimatedInstalledBytes="50000000"
      EstimatedInstallSeconds="220">
      <!-- These checks determine whether the package is to be installed -->
      <InstallConditions>
        <!-- ByPass if the BuildNum is the same --> 
        <BypassIf Property="CRBuildNum" Compare="ValueExists"/>
       
        <!-- Block install if user does not have admin privileges -->
        <FailIf Property="AdminUser" Compare="ValueEqualTo" Value="false" String="AdminRequired"/>
        <!-- Block install on Win95 -->
        <FailIf Property="Version9x" Compare="VersionLessThan" Value="4.10" String="InvalidPlatformWin9x"/>
        <!-- Block install on NT 4 or less -->
        <FailIf Property="VersionNT" Compare="VersionLessThan" 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" FormatMessageFromSystem="true" String="GeneralFailure" />
      </ExitCodes>
    </Command>
  </Commands>
</Product>

Keywords

KBA , BI-DEV-NET , BI Software Development Kits (SDKs) - .NET or Other , How To

Product

Crystal Reports 2008 V1