[wix-users] MSMQ issue during DB install
rob at firegiant.com
Fri Oct 12 10:08:43 PDT 2018
And avoids doing the work to improve the MSMQ custom action code so it "just works" for everybody. :(
Short replies here. Complete answers over there: http://www.firegiant.com/
From: wix-users <wix-users-bounces at lists.wixtoolset.org> On Behalf Of Ven H via wix-users
Sent: Friday, October 12, 2018 10:05 AM
To: Edwin Castro <egcastr at gmail.com>
Cc: Ven H <venh.123 at gmail.com>; WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
Subject: Re: [wix-users] MSMQ issue during DB install
Ok. I found a way around. Here it goes.
I searched for "Failed to load mqrt.dll" message in the Wix Source Code. I found it in src\ext\MsmqExtension\ca\mqsched\mqsched.cpp. It is inside 2 custom actions MessageQueuingInstall and MessageQueuingUninstall. I searched for these custom actions further in the source code. I found references in src\ext\MsmqExtension\wixlib\MsmqExtension.wxs. In this file, I found the following lines.
<Custom Action="MessageQueuingUninstall" After="DeleteServices"
Overridable="yes">VersionNT >= 500</Custom>
<Custom Action="MessageQueuingInstall" Before="InstallServices"
Overridable="yes">VersionNT >= 500</Custom> </InstallExecuteSequence>
Since these are overridable, I included them in my wxs file and modified the condition to suit my requirements, as below.
Before="InstallServices"><![CDATA[(NOT REMOVE~="ALL") AND (INSTALL_APP = "1")]]></Custom> <Custom Action="MessageQueuingUninstall"
After="DeleteServices"><![CDATA[(REMOVE~="ALL") AND (!AppFeature = 3)]]></Custom>
And it worked. Thanks a lot to all of you for your help. Hope this helps someone. This solution avoids writing a custom action and also avoids installing MSMQ.
More information about the wix-users