2012-07-11 5 views
2

WiX Installer를 만들 때 .NET Framework 4.0 (v. 13.0.3) 용 Crystal Reports의 특정 버전이 설치되어 있는지 확인해야합니다.WiX에서 .NET Framework 4.0 설치를 위해 Crystal Reports를 확인하는 방법

나는 모두가 (내 W7 시스템에서) 작동하는 것 두 가지 방법을 찾았지만, 하나 또는 다른 등

옵션 1 (내 우려와 XP 작업 같은 낙하이 있는지 확실하지 않은

이 옵션은) 이후 버전이 다른 제품 코드와 함께 설치되어있는 경우,이 조건이 통과하지 것이다 :

<Property Id="CRVSINSTALLED"> 
    <RegistrySearch Id="CRVSInstalledSearch" Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Uninstall\{AAD476D7-FC64-40BC-85EA-0C1FD98D8375}" Name="InstallDate" Type="raw" /> 
</Property> 
<Condition Message="You don't have Crystal Reports for Visual Studio 2010 (v. 13.0.3) installed."> 
    <![CDATA[CRVSINSTALLED]]> 
</Condition> 

옵션 2 : 저는 개인적으로 리튬을하지 않기 때문에

<Property Id="CRVSINSTALLED2"> 
    <RegistrySearch Id="CRVSInstalledSearch2" Root="HKLM" Key="Software\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Crystal Reports" Name="CRRuntime32Version" Type="raw" /> 
</Property> 
<Condition Message="You don't have Crystal Reports for Visual Studio 2010 (v. 13.0.3) installed 2."> 
    <![CDATA[CRVSINSTALLED2 >= "13.0.3"]]> 
</Condition> 
+1

위의 레지스트리 검사를 사용하기로 결정한 경우 64 비트 버전의 Crystal Reports가 실행 중일 수 있습니다. 동일한 키 아래에서 'CRRuntime64Version'에 대한 문자열 값을 찾을 수 있습니다. 네이티브 VS2010 부트 스트 래퍼도 레지스트리 키를 확인하는 것으로 보입니다. .NET Framework 4.0 용 C : \ Program Files \ Microsoft SDKs \ Windows \ v7.0A \ Bootstrapper \ Packages \ Crystal Reports에서 'Product.xml' 파일의 내용을 참조하십시오. – Jaans

답변

3

내가 옵션 2 좋아 레지스트리 키에 따라 키보드 HKLM \ Software \ Microsoft \ Windows \ CurrentVersion \ Uninstall. 세 번째 옵션은 check the version number of a file during installation입니다.

+0

감사합니다. Bryan, 감사합니다. 2와 3 사이의 장단점에 대한 통찰력을 가지고 있습니까? – patrickbadley

+0

사용자가 파일을 설치할 위치에 영향을 미칠 가능성이 더 높고 버전 검사가 필요한 파일을 결정할 때 약간의 복잡성이 발생할 수 있으므로 옵션 2를 선호합니다. 레지스트리 키의 위치를 ​​쉽게 결정할 수 있습니다. – BryanJ

관련 문제