I have been looking at this again. And it seems that the following registry 
path is only available if MSMQ is installed. 
This path exists on XP (SP3), Windows 2008 (R1) and Windows 7. I expect it will 
exist on other OS's as well: 

HKLM\Software\Microsoft\MSMQ

If MSMQ is NOT installed, this path does not exist at all. 
Furthermore, there is a sub-path called Setup 
(HKLM\Software\Microsoft\MSMQ\Setup). This path contains several keys which 
seem to indicate what MSMQ components has been installed. E.g. MSMQ_Core. 

I have seen the path on an ancient Windows 2000 Server although MSMQ wasn't 
installed, there the Setup folder was empty however. 
So, unless someone have some hard fact about this, I think I will personally 
check for the existence of the path: 

HKLM\Software\Microsoft\MSMQ

Since this seems to only exists if MSMQ has actually been installed, at least 
for those OS' we support. 

 

Med venlig hilsen / Best regards,
Thomas Due - Software Developer 
Tel: +45 8678 5500 Fax: +45 8678 5210 
Johann Gutenbergs vej 5-9, Aarhus N, Denmark 
t...@scanvaegt.dk | www.scanvaegt.dk  



This e-mail and its attachments are intended for the named addressee only and 
may contain information that is confidential and privileged. Unauthorized use 
can instigate a claim for damages and constitute a criminal offence. If you 
received this in error, please contact the sender and delete the material.



-----Original Message-----
From: Pally Sandher [mailto:pally.sand...@iesve.com] 
Sent: 22. juni 2010 13:16
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] MSMQ and Windows 2008 \ Windows 7, how to check?

HasMSMQ & HASMSMQ are not interchangeable when talking about Windows Installer 
Properties. Also Launch Conditions fire the error when the inner text evaluates 
to false. Hence

    <Condition Message="MSMQ must be installed">
        <![CDATA[(HASMSMQ AND VersionNT>=600) OR (HASMSMQ_CORE AND 
(VersionNT>500 AND VersionNT<600)) OR Installed]]>
    </Condition>

would be a better choice for the inner text (assuming you set HASMSMQ_CORE in a 
RegistrySearch for the XP/2003 registry location described below, replace 
HASMSMQ_CORE with your own public Property name). However the question is 
ambiguous as Vista & Server 2008 are v6.0, Windows 7 & Server 2008 R2 are v6.1 
(no mention of Vista in the original question). The above change to the 
Condition's inner text would check the HASMSMQ only on Vista/Server 2008 & 
above while XP/2003 use the original property which I can only assume is the 
expected behaviour.

Palbinder Sandher 
Software Deployment & IT Administrator
T: +44 (0) 141 945 8500 
F: +44 (0) 141 945 8501 

http://www.iesve.com 
**Design, Simulate + Innovate with the <Virtual Environment>**
Integrated Environmental Solutions Limited. Registered in Scotland No. SC151456 
Registered Office - Helix Building, West Of Scotland Science Park, Glasgow G20 
0SP
Email Disclaimer

-----Original Message-----
From: Thomas Due [mailto:t...@scanvaegt.dk] 
Sent: 22 June 2010 07:40
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] MSMQ and Windows 2008 \ Windows 7, how to check?

> My installer must be run on Windows7 and Windows 2008 (and r2). One of 
> the prerequisite is service MSMQ, which must be installed on this 
> computer. But how to check it? On windows XP and Windows 2003 I 
> checked registry value 
> "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\OC 
> Manager\Subcomponents\msmq_core"
> and if it exists - msmq is installed. Now this value doesn't 
> correspond to the installed state of the MSMQ.
> So any ideas how to check MSMQ installed state?

This approach seems to work for me. 

<Product ... >
    <Property Id="HASMSMQ">
        <RegistrySearch Id="MSMQIsInstalled"
                        Root="HKLM"
                        Key="System\CurrentControlSet\Services\MSMQ"
                        Name="ImagePath"
                       Type="raw" />
    </Property>

    <Condition Message="MSMQ must be installed">
        <![CDATA[Installed or not HasMSMQ]]>
    </Condition>
</Product>
 
 /Thomas Due

 



------------------------------------------------------------------------------
ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day 
Giveaway. ONE MASSIVE PRIZE to the lucky parental unit.  See the prize list and 
enter to win: 
http://p.sf.net/sfu/thinkgeek-promo
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users






------------------------------------------------------------------------------
ThinkGeek and WIRED's GeekDad team up for the Ultimate 
GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the 
lucky parental unit.  See the prize list and enter to win: 
http://p.sf.net/sfu/thinkgeek-promo
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to