I created a VS 2005 "Setup and Deployment" package and as a prerequisite I included "Crystal Reports 2008" (i.e. CRRuntime_12_0_mlb.msi).
Each time I run the install it installs "Crystal Reports 2008"
The log files always shows "'Crystal Reports 2008' RunCheck result: Install Needed"
For XP this doesn't seem seem be a show-stopper - but for Vista this results in an error
Install Log
===============
Running checks for package 'Crystal Reports for .NET Framework 2.0', phase BuildList
Reading value 'BuildNum' of registry key 'HKLM\SOFTWARE\Crystal Decisions\10.2\Crystal Reports'
Read string value '570'
Setting value '570 ' for property 'CRBuildNum'+ The following properties have been set for package 'Crystal Reports for .NET Framework 2.0': +Property: [CRBuildNum] = 570
Running checks for command 'CrystalReports\CRRedist2005_x86.msi'
Result of running operator 'ValueEqualTo' on property 'CRBuildNum' and value '570': true
Result of checks for command 'CrystalReports\CRRedist2005_x86.msi' is 'Bypass'
'Crystal Reports for .NET Framework 2.0' RunCheck result: No Install Needed
Running checks for package 'Crystal Reports 2008', phase BuildList
Reading value 'BuildNum' of registry key 'HKLM\SOFTWARE\Business Objects\Suite 12.0\Crystal Reports'
Read string value ''
Setting value ' ' for property 'CRBuildNum'+ The following properties have been set for package 'Crystal Reports 2008': +Property: [CRBuildNum] =
Running checks for command 'CrystalReports 12.0\CRRuntime_12_0_mlb.msi'
Result of running operator 'ValueEqualTo' on property 'CRBuildNum' and value '200': false
Result of running operator 'ValueEqualTo' on property 'AdminUser' and value 'false': false
Skipping FailIf because Property 'Version9x' was not defined
Result of running operator 'VersionLessThan' on property 'VersionNT' and value '5.00': false
Result of checks for command 'CrystalReports 12.0\CRRuntime_12_0_mlb.msi' is 'Install'
'Crystal Reports 2008' RunCheck result: Install Needed
EULA for components 'Crystal Reports 2008' was accepted.
Copying files to temporary directory "C:\Users\tlguser\AppData\Local\Temp\VSD4BD9.tmp\"
Copying from 'D:\CrystalReports 12.0\CRRuntime_12_0_mlb.msi' to 'C:\Users\tlguser\AppData\Local\Temp\VSD4BD9.tmp\CrystalReports 12.0\CRRuntime_12_0_mlb.msi'
Running checks for package 'Crystal Reports 2008', phase BeforePackage
Reading value 'BuildNum' of registry key 'HKLM\SOFTWARE\Business Objects\Suite 12.0\Crystal Reports'
Read string value ''
Setting value ' ' for property 'CRBuildNum'+ The following properties have been set for package 'Crystal Reports 2008': +Property: [CRBuildNum] =
Running checks for command 'CrystalReports 12.0\CRRuntime_12_0_mlb.msi'
Result of running operator 'ValueEqualTo' on property 'CRBuildNum' and value '200': false
Result of running operator 'ValueEqualTo' on property 'AdminUser' and value 'false': false
Skipping FailIf because Property 'Version9x' was not defined
Result of running operator 'VersionLessThan' on property 'VersionNT' and value '5.00': false
Result of checks for command 'CrystalReports 12.0\CRRuntime_12_0_mlb.msi' is 'Install'
'Crystal Reports 2008' RunCheck result: Install Needed
Verifying file integrity of C:\Users\tlguser\AppData\Local\Temp\VSD4BD9.tmp\CrystalReports 12.0\CRRuntime_12_0_mlb.msi
WinVerifyTrust returned 0
File trusted
Installing using command line '"C:\Windows\system32\msiexec.exe" -I "C:\Users\tlguser\AppData\Local\Temp\VSD4BD9.tmp\CrystalReports 12.0\CRRuntime_12_0_mlb.msi" -q '
Process exited with code 0
Running checks for package 'Crystal Reports 2008', phase AfterPackage
Reading value 'BuildNum' of registry key 'HKLM\SOFTWARE\Business Objects\Suite 12.0\Crystal Reports'
Read string value ''
Setting value ' ' for property 'CRBuildNum'+ The following properties have been set for package 'Crystal Reports 2008': +Property: [CRBuildNum] =
Running checks for command 'CrystalReports 12.0\CRRuntime_12_0_mlb.msi'
Result of running operator 'ValueEqualTo' on property 'CRBuildNum' and value '200': false
Result of running operator 'ValueEqualTo' on property 'AdminUser' and value 'false': false
Skipping FailIf because Property 'Version9x' was not defined
Result of running operator 'VersionLessThan' on property 'VersionNT' and value '5.00': false
Result of checks for command 'CrystalReports 12.0\CRRuntime_12_0_mlb.msi' is 'Install'
'Crystal Reports 2008' RunCheck result: Unknown
Launching Application.
Using MsiInstallProduct with package path 'D:\Setup.msi' and command line ''
MsiInstallProduct returned '1638'
Error:
Status of package 'Crystal Reports 2008' after install is 'InstallUnknown'