XmlFile or XmlConfig will do it. On Sun, Jul 18, 2010 at 6:13 AM, Kagiso Seboni <kagisoseb...@yahoo.com>wrote:
> I want to make changes to and XML file at runtime..., which WiX tag will > allow > me to make effective changes to a particular node in an XML file... would i > implement this using the XMLFile tag alongside the XPath element...... > > [03:12:01 PM] Michael Gluckman: I have trying to install a .NET service > application. As part of the installation I want to configure my NHibernate > database configuration in my config file based on the user's inout. How do > I go > about doing this? Do I use the XmlFile tag for doing the replacement at > intall > time? Do you have a simple example. > > Regards > Kagiso > > ----- Forwarded Message ---- > From: Blair Murri <blairlmu...@msn.com> > To: Kagiso Seboni <kagisoseb...@yahoo.com> > Cc: wix-users sourceforge <wix-users@lists.sourceforge.net> > Sent: Tue, July 6, 2010 6:37:32 AM > Subject: RE: [USEINTEGRATEDSECURITY] EnterpriseSMS Wix Installation > > > You set USEINTEGRATEDSECURITY using this control: > > <ControlId="IntegratedSecurityCheckBox"Type="CheckBox"X="45"Y="123"Text="Use > Integrated > > Security"Property="USEINTEGRATEDSECURITY"Width="200"Height="15"CheckBoxValue="1"/> > > When using a checkbox to set a property to a value, the checkbox will be > set > when the value is the value indicated, and the box will set the property to > that > value when the dialog is closed/a new dialog is opened. If the checkbox is > not > selected when the dialog moves on, the property will be cleared. > > Thus, you need one of these two (take your pick): > > <CustomAction="SqlAuthentication"After="SetSqlAuthentication">$db2mobileSQLPackager.Packages>2 > AND USEINTEGRATEDSECURITY<>0</Custom> > > <CustomAction="SqlAuthentication"After="SetSqlAuthentication">$db2mobileSQLPackager.Packages>2 > AND NOT USEINTEGRATEDSECURITY</Custom> > The first one would be more “reliable” as some naïve person who passes the > variable via the command-line may attempt to set the value to 0, so I > recommend > the first one. > > A verbose log would show you the final value of each property defined in > the > transaction. There you would be able to see if USEINTEGRATEDSECURITY had > the > value of 0 or no value at all. > > Unlike many other programming languages, a cleared variable in Windows > Installer > is NOT the same as the value 0. > > From:Kagiso Seboni [mailto:kagisoseb...@yahoo.com] > Sent: Monday, July 05, 2010 12:14 PM > To: Blair Murri > Cc: wix-users sourceforge > Subject: Re: [USEINTEGRATEDSECURITY] EnterpriseSMS Wix Installation > > My Gosh..@ > > I've tried various sequencing permutations and changing the timing of > Custom > Action invocation but to no avail....even the changes you'd recommended > only > reverse the situation whereby when USEINTEGRATEDSECURITY=1 the custom > action > begins the console applications but fails whenever USEINTEGRATEDSECURITY=0 > > > <SetPropertyId="IntegratedSecurity"Value=""[INSTALLDIR]db2mobileSQLPackage.exe"/server:[SERVERNAME]/database:[DATABASENAME]/quiet/makedatabase" > > > After="InstallFiles"Sequence="execute">$db2mobileSQLPackager.Packages>2</SetProperty> > > > > <SetPropertyId="SqlAuthentication"Value=""[INSTALLDIR]db2mobileSQLPackage.exe"/server:[SERVERNAME]/database:[DATABASENAME]/username:[DBUSERNAME]/password:[PASSWORD]/quiet/makedatabase" > > > After="InstallFiles"Sequence="execute">$db2mobileSQLPackager.Packages>2</SetProperty> > > > > <CustomActionId="IntegratedSecurity"BinaryKey="WixCA"DllEntry="CAQuietExec"Execute="deferred"Return="check"Impersonate="no"/> > > > > <CustomActionId="SqlAuthentication"BinaryKey="WixCA"DllEntry="CAQuietExec"Execute="deferred"Return="check"Impersonate="no"/> > > > These are the recommended changes to the "SqlAuthentication".., but i still > cannot get the same custom action to get invoked, notwithstanding the > Execution > path selected as per the value of USEINTEGRATEDSECURITY=0 or 1 > > <InstallExecuteSequence> > > <CustomAction="IntegratedSecurity"After="SetIntegratedSecurity">$db2mobileSQLPackager.Packages>2 > AND USEINTEGRATEDSECURITY=1</Custom> > > <CustomAction="SqlAuthentication"After="SetSqlAuthentication">$db2mobileSQLPackager.Packages>2 > AND USEINTEGRATEDSECURITY=0</Custom> > </InstallExecuteSequence> > > Let me just follow up this request for assistance with details of the UI > code > that chooses the values relating to USEINTEGRATEDSECURITY: > > <Fragment> > <UI> > <TextStyleId="GUI_Font_Normal"FaceName="Tahoma"Size="8"/> > <PropertyId="WixUIFont"Value="WixUI_Font_Normal"/> > <ProgressTextAction="Database.Install">Installing EnterpriseSMS Database > "[DATABASENAME]"</ProgressText> > > > <DialogId="SQLServerPromptingDlg"Width="370"Height="270"Title="[ProductName] > [Setup]"NoMinimize="yes"> > > <ControlId="ServerLabel"Type="Text"X="45"Y="73"Width="100"Height="18"TabSkip="no"Text="&Server > Name:"/> > > <ControlId="ServerEdit"Type="Edit"X="115"Y="73"Width="220"Height="18"Property="SERVERNAME"Text="{80}"/> > > > <ControlId="DatabaseLabel"Type="Text"X="45"Y="98"Width="100"Height="18"TabSkip="no"Text="&Database > Name:"/> > > <ControlId="DatabaseEdit"Type="Edit"X="115"Y="98"Width="220"Height="18"Property="DATABASENAME"Text="{80}"/> > > > <ControlId="IntegratedSecurityCheckBox"Type="CheckBox"X="45"Y="123"Text="Use > Integrated > > Security"Property="USEINTEGRATEDSECURITY"Width="200"Height="15"CheckBoxValue="1"/> > > > <ControlId="UserNameLabel"Type="Text"X="45"Y="148"Width="100"Height="18"TabSkip="no"Text="&User > Name:"/> > > <ControlId="UserNameEdit"Type="Edit"X="115"Y="148"Width="110"Height="18"Property="DBUSERNAME"Text="{50}"> > > <ConditionAction="disable">USEINTEGRATEDSECURITY = 1</Condition> > <ConditionAction="enable"><![CDATA[USEINTEGRATEDSECURITY <>1]]></Condition> > </Control> > > <ControlId="PasswordLabel"Type="Text"X="45"Y="173"Width="100"Height="18"TabSkip="no"Text="&Password:"/> > > > <ControlId="PasswordEdit"Type="Edit"X="115"Y="173"Width="110"Height="18"Property="PASSWORD"Password="no"Text="{50}"> > > <ConditionAction="disable">USEINTEGRATEDSECURITY = 1</Condition> > <ConditionAction="enable"><![CDATA[USEINTEGRATEDSECURITY <>1]]></Condition> > </Control> > > <ControlId="Back"Type="PushButton"X="180"Y="243"Width="56"Height="17"Text="<Back"> > > <PublishEvent="NewDialog"Value="LicenseAgreementDlg">1</Publish> > </Control> > > <ControlId="Next"Type="PushButton"X="236"Y="243"Width="56"Height="17"Default="yes"Text="Next>"> > > <PublishEvent="SpawnWaitDialog"Value="WaitForCostingDlg">CostingComplete = > 1</Publish> > <PublishEvent='NewDialog'Value='SetupTypeDlg'>1</Publish> > </Control> > > <ControlId="Cancel"Type="PushButton"X="304"Y="243"Width="56"Height="17"Cancel="yes"Text="Cancel"> > > <PublishEvent="SpawnDialog"Value="CancelDlg">1</Publish> > </Control> > > <ControlId="BannerBitmap"Type="Bitmap"X="0"Y="0"Width="370"Height="44"TabSkip="no"Text="WixUI_Bmp_Banner"/> > > > <ControlId="Description"Type="Text"X="25"Y="23"Width="280"Height="15"Transparent="yes"NoPrefix="yes"> > > <Text>Please specify database installation information</Text> > </Control> > <ControlId="BottomLine"Type="Line"X="0"Y="234"Width="370"Height="0"/> > > <ControlId="Title"Type="Text"X="15"Y="6"Width="200"Height="15"Transparent="yes"NoPrefix="yes"> > > <Text><![CDATA[{\WixUI_Font_Title}SQL Server Information]]></Text> > </Control> > <ControlId="BannerLine"Type="Line"X="0"Y="44"Width="370"Height="0"/> > </Dialog> > </UI> > </Fragment> > > Really appreciate your insight into WiX.., i have learnt so much from my > correspondence with you i'm really having sleepless nights just getting the > EnterpriseSMS Installer to work 100% > > HoLLa > Kagiso > > > > ________________________________ > > From:Blair Murri <blairlmu...@msn.com> > To: Kagiso Seboni <kagisoseb...@yahoo.com> > Cc: Blair wix-users <os...@live.com> > Sent: Mon, July 5, 2010 5:20:01 PM > Subject: RE: [WiX-users] Fw: EnterpriseSMS Wix Installation > Change > > <CustomAction="SqlAuthentication"After="SetSqlAuthentication">$db2mobileSQLPackager.Packages>2</Custom> > > To > > <CustomAction="SqlAuthentication"After="SetSqlAuthentication">$db2mobileSQLPackager.Packages>2 > AND USEINTEGRATEDSECURITY=0</Custom> > From:Kagiso Seboni [mailto:kagisoseb...@yahoo.com] > Sent: Monday, July 05, 2010 5:19 AM > To: blairlmu...@msn.com > Cc: Blair wix-users > Subject: Re: [WiX-users] Fw: EnterpriseSMS Wix Installation > > However after fiddling around with the timing of my sequencing i was able > to > make the invocation of the custom action in both scenarios when > USEINTEGRATEDSECURITY=0/1: > > But one functional error arising is that wen i run the Installer with > USEINTEGRATEDSECURITY=1 > the custom action get invoked twice instead on once: > > > <SetPropertyId="IntegratedSecurity"Value=""[INSTALLDIR]db2mobileSQLPackage.exe"/server:[SERVERNAME]/database:[DATABASENAME]/quiet/makedatabase" > > > After="InstallFiles"Sequence="execute">$db2mobileSQLPackager.Packages>2</SetProperty> > > > > <SetPropertyId="SqlAuthentication"Value=""[INSTALLDIR]db2mobileSQLPackage.exe"/server:[SERVERNAME]/database:[DATABASENAME]/username:[DBUSERNAME]/password:[PASSWORD]/quiet/makedatabase" > > > After="InstallFiles"Sequence="execute">$db2mobileSQLPackager.Packages>2</SetProperty> > > > > <CustomActionId="IntegratedSecurity"BinaryKey="WixCA"DllEntry="CAQuietExec"Execute="deferred"Return="check"Impersonate="no"/> > > > > <CustomActionId="SqlAuthentication"BinaryKey="WixCA"DllEntry="CAQuietExec"Execute="deferred"Return="check"Impersonate="no"/> > > > <InstallExecuteSequence> > > <CustomAction="IntegratedSecurity"After="SetIntegratedSecurity">$db2mobileSQLPackager.Packages>2 > AND USEINTEGRATEDSECURITY=1</Custom> > > <CustomAction="SqlAuthentication"After="SetSqlAuthentication">$db2mobileSQLPackager.Packages>2</Custom> > > </InstallExecuteSequence> > > I would like to rectify the sequencing so as to invoke the CAQuietExec > Custom > Action only once when running IntegratedSecurity > > thancxz > Kagiso > > > > ________________________________ > > From:Kagiso Seboni <kagisoseb...@yahoo.com> > To: blairlmu...@msn.com > Sent: Mon, July 5, 2010 12:49:01 PM > Subject: Fw: [WiX-users] Fw: EnterpriseSMS Wix Installation > > ________________________________ > > From:Kagiso Seboni <kagisoseb...@yahoo.com> > To: Blair <os...@live.com> > Sent: Mon, July 5, 2010 12:42:11 PM > Subject: Re: [WiX-users] Fw: EnterpriseSMS Wix Installation > 1. For clarification db2mobileSQLPackage.exe can be invoked in two kind of > ways > 1st with the servername:[SERVERNAME] and databasename:[DATABASENAME] > properties > set for Windows Authentication whenever USEINTEGRATEDSECURITY=1 which is > checked > from the UI > > > <SetPropertyId="IntegratedSecurity"Value=""[INSTALLDIR]db2mobileSQLPackage.exe"/server:[SERVERNAME]/database:[DATABASENAME]/quiet/makedatabase" > > After="InstallFiles"Sequence="execute">$db2mobileSQLPackager.Packages>2 AND > USEINTEGRATEDSECURITY=1</SetProperty> > > 2. 2nd db2mobileSQLPackage.exe can be invoked > > servername:[SERVERNAME], databasename:[DATABASENAME], username:[DBUSERNAME] > and > password:[PASSWORD] properties set for typical SQL Severve Authentication > whenever USEINTEGRATEDSECURITY=0 which is unchecked from the UI > > <SetPropertyId="SqlAuthentication"Value=""[INSTALLDIR]db2mobileSQLPackage.exe"/server:[SERVERNAME]/database:[DATABASENAME]/username:[DBUSERNAME]/password:[PASSWORD]/quiet/makedatabase" > > After="InstallFiles"Sequence="execute">$db2mobileSQLPackager.Packages>2 AND > USEINTEGRATEDSECURITY=0</SetProperty> > > The object now would be to create 2 independent Custom Actions which will > get > executed depending on the value of USEINTEGRATEDSECURITY > > > <CustomActionId="IntegratedSecurity"BinaryKey="WixCA"DllEntry="CAQuietExec"Execute="deferred"Return="check"Impersonate="no"/> > > > <CustomActionId="SqlAuthentication"BinaryKey="WixCA"DllEntry="CAQuietExec"Execute="deferred"Return="check"Impersonate="no"/> > > > Similarly the InstallExecuteSequence for the actually invocation of my > custom > actions: > > <InstallExecuteSequence> > <!--<Custom Action="Database.Install.Properties" > After="InstallFiles">$db2mobileSQLPackager.Packages>2 </Custom> > <Custom Action="Database.Install.Properties.Sql" > After="Database.Install.Properties">$db2mobileSQLPackager.Packages>2 AND > USEINTEGRATEDSECURITY=0</Custom> > <Custom Action="Database.Install" > After="Database.Install.Properties.Sql">$db2mobileSQLPackager.Packages>2 > AND > USEINTEGRATEDSECURITY=1</Custom>--> > > <CustomAction="IntegratedSecurity"After="SetIntegratedSecurity">$db2mobileSQLPackager.Packages>2</Custom> > > > <CustomAction="SqlAuthentication"After="SetSqlAuthentication">$db2mobileSQLPackager.Packages>2</Custom> > > </InstallExecuteSequence> > > This sequencing compiles with no errors.., for if i follow your example and > Unresolved Reference to Symbol > 'Custom Action : InstallExecuteSequence/SetIntegratedSecurity' ensues > > Regards > Kagiso > > If that is indeed the case I have two ideas, one similar to what you have > done, > and the other may appear easier to understand. I will present the second. > > > <SetPropertyId="IntegratedSecurity"Value="/username:[DBUSERNAME]/password:[PASSWORD]"After="InstallFiles" > Sequence="execute">$db2mobileSQLPackager.Packages>2 AND > USEINTEGRATEDSECURITY=1</SetProperty> > > > <SetPropertyId="Database.Install"Value=""[INSTALLDIR]db2mobileSQLPackage.exe"/server:[SERVERNAME]/database:[DATABASENAME][IntegratedSecurity]/quiet/makedatabase"After="SetIntegratedSecurity" > Sequence="execute">$db2mobileSQLPackager.Packages>2</SetProperty> > > ERROR LIST: Unresolved Reference to symbol 'CustomAction: > InstallExecuteSequence/SetIntegratedSecurity > > > <CustomActionId="Database.Install"BinaryKey="WixCA"DllEntry="CAQuietExec"Execute="deferred"Return="check"Impersonate="no"/> > > <InstallExecuteSequence> > > > <CustomAction="Database.Install"After="SetDatabase.Install">$db2mobileSQLPackager.Packages>2</Custom> > > </InstallExecuteSequence> > > From:Kagiso Seboni [mailto:kagisoseb...@yahoo.com] > Sent: Friday, July 02, 2010 4:21 AM > To: Blair > Subject: Re: [WiX-users] Fw: EnterpriseSMS Wix Installation > > The purpose of having 2 custom actions using the same property is because > of > SQLPackage component that can take [ServerName] and [DatabaseName] or > alternatively: > > [Servername] , [DatabaseName], [DBUserName] and [Password] properties.... > but > either execution path requires the CAQuietExec Custom Action. > > <CustomActionId="Database.Install.Properties"Property="Database.Install" > > Value=""[INSTALLDIR]db2mobileSQLPackage.exe"/server:[SERVERNAME]/database:[DATABASENAME]/quiet/makedatabase"Execute="immediate"/> > > > > <CustomActionId="Database.Install.Properties.Sql"Property="Database.Install" > > Value=""[INSTALLDIR]db2mobileSQLPackage.exe"/server:[SERVERNAME]/database:[DATABASENAME]/username:[DBUSERNAME]/password:[PASSWORD]/quiet/makedatabase"Execute="immediate"/> > > > > <CustomActionId="Database.Install"BinaryKey="WixCA"DllEntry="CAQuietExec"Execute="deferred"Return="check"Impersonate="no"/> > > > The InstallExecuteSequence which sequences the execution of my Custom > Actions: > > > <InstallExecuteSequence> > > <CustomAction="Database.Install.Properties"After="InstallFiles">$db2mobileSQLPackager.Packages>2 > </Custom> > > <CustomAction="Database.Install.Properties.Sql"After="Database.Install.Properties">$db2mobileSQLPackager.Packages>2 > AND USEINTEGRATEDSECURITY=0</Custom> > > <CustomAction="Database.Install"After="Database.Install.Properties.Sql">$db2mobileSQLPackager.Packages>2 > AND USEINTEGRATEDSECURITY=1</Custom> > </InstallExecuteSequence> > > SQLPackage component described in the Directory tag: > > > > <ComponentId="db2mobileSQLPackager.Packages"Guid="9AE25F26-602C-4148-B223-A3FD8AC0AA45"> > > > <FileId="db2mobileSQLPackage"Name="db2mobileSQLPackage.exe"KeyPath="yes"Vital="yes" > > DiskId="1"Source="db2mobileSQLPackage.exe"/> > > <RegistryKeyId='Database.State.Server'Root='HKLM'Key='SOFTWARE\EnterpriseSMS'Action='createAndRemoveOnUninstall'> > > <RegistryValueType='string'Name='ServerName'Value='[SERVERNAME]'/> > </RegistryKey> > > <RegistryKeyId='Database.State.Database'Root='HKLM'Key='SOFTWARE\EnterpriseSMS'Action='createAndRemoveOnUninstall'> > > <RegistryValueType='string'Name='DatabaseName'Value='[DATABASENAME]'/> > </RegistryKey> > > <RegistryKeyId='Database.State.Username'Root='HKLM'Key='SOFTWARE\EnterpriseSMS'Action='createAndRemoveOnUninstall'> > > <RegistryValueType='string'Name='DBUserName'Value='[DBUSERNAME]'/> > </RegistryKey> > > <RegistryKeyId='Database.State.Password'Root='HKLM'Key='SOFTWARE\EnterpriseSMS'Action='createAndRemoveOnUninstall'> > > <RegistryValueType='string'Name='Password'Value='[PASSWORD]'/> > </RegistryKey> > > <RegistryKeyId='Database.State.Integrated'Root='HKLM'Key='SOFTWARE\EnterpriseSMS'Action='createAndRemoveOnUninstall'> > > > <RegistryValueType='string'Name='IntegratedSecurity'Value='[USEINTEGRATEDSECURITY]'/> > > </RegistryKey> > </Component> > > The following code component is from the <UI> fragment: > > > <ControlId="IntegratedSecurityCheckBox"Type="CheckBox"X="45"Y="123"Text="Use > Integrated > > Security"Property="USEINTEGRATEDSECURITY"Width="200"Height="15"CheckBoxValue="1"/> > > > <ControlId="UserNameLabel"Type="Text"X="45"Y="148"Width="100"Height="18"TabSkip="no"Text="&User > Name:"/> > > <ControlId="UserNameEdit"Type="Edit"X="115"Y="148"Width="110"Height="18"Property="DBUSERNAME"Text="{50}"> > > <ConditionAction="disable">USEINTEGRATEDSECURITY = 1</Condition> > <ConditionAction="enable"><![CDATA[USEINTEGRATEDSECURITY <>1]]></Condition> > </Control> > > <ControlId="PasswordLabel"Type="Text"X="45"Y="173"Width="100"Height="18"TabSkip="no"Text="&Password:"/> > > > <ControlId="PasswordEdit"Type="Edit"X="115"Y="173"Width="110"Height="18"Property="PASSWORD"Password="no"Text="{50}"> > > <ConditionAction="disable">USEINTEGRATEDSECURITY = 1</Condition> > <ConditionAction="enable"><![CDATA[USEINTEGRATEDSECURITY <>1]]></Condition> > </Control> > > The objective is to get both custom actions to execute notwithstanding > whichever > combination of Windows Authentication or SQLServer Authentication > properties.: > > Appreciate ur Help > Kagiso > > > > ________________________________ > > From:Blair <os...@live.com> > To: Kagiso Seboni <kagisoseb...@yahoo.com> > Sent: Fri, July 2, 2010 9:54:07 AM > Subject: RE: [WiX-users] Fw: EnterpriseSMS Wix Installation > You appear to have two actions that set properties, and yet only one action > that > calls an executable. There is a reason I used <SetProperty> instead of > <CustomAction> elements in the example I sent you. <SetProperty> creates > property-setting custom actions and sets their scheduling all in one tag. > <CustomAction> elements require corresponding <Custom> elements to schedule > them, and thus tend to be more verbose overall (too many tags for the > actions > you are trying to use). > > Also, you test the USEINTEGRATEDSECURITY property in your conditions. What > exactly is your aim with these two command-lines? Are the two different > command-lines intended to be mutually exclusive? > > If they are to be mutually exclusive, then it makes sense to have two > property-setting CAs and only one CAQuietExec CA. However, if that is the > case, > you have several problems with your conditions WRT the > USEINTEGRATEDSECURITY > property and the command-line-related property you are setting to pass to > that > CA. > > Please explain. > > From:Kagiso Seboni [mailto:kagisoseb...@yahoo.com] > Sent: Thursday, July 01, 2010 11:57 PM > To: Blair > Subject: Re: [WiX-users] Fw: EnterpriseSMS Wix Installation > > HoLLa Blair > > Your insight was very helpful in being able to use custom actions with my > WiX > Installer MSI Package. To actually test invocation of custom actions one > would > need to run the realease version of the package.msi..... > > I've created the following custom actions below, but now only the one > custom > action is invoked this one fails to be invoked: > > Database.Install.Properties.Sql"After="Database.Install.Properties">$db2mobileSQLPackager.Packages>2 > AND USEINTEGRATEDSECURITY=0</Custom> from the InstallExecuteSequence and > the > other fails to get started : > > <CustomActionId="Database.Install.Properties"Property="Database.Install" > > Value=""[INSTALLDIR]db2mobileSQLPackage.exe"/server:[SERVERNAME]/database:[DATABASENAME]/quiet/makedatabase"Execute="immediate"/> > > > <CustomActionId="Database.Install.Properties.Sql"Property="Database.Install2" > > Value=""[INSTALLDIR]db2mobileSQLPackage.exe"/server:[SERVERNAME]/database:[DATABASENAME]/username:[DBUSERNAME]/password:[PASSWORD]/quiet/makedatabase"Execute="immediate"/> > > > <!--_______________________________________________________________________________________________________________ > --> > <!--Note: QtExec custom action allows you to run an arbitrary command line > in an > MSI-based setup in silent mode. --> > <!--QtExec is commonly used to suppress console windows that would > otherwise > appear appear when invoking --> > <!--the executable directly. The custom action is located in the WixCA > library, > which is a part of the --> > <!--WixUtilExtension --> > > <!--_______________________________________________________________________________________________________________ > --> > > <CustomActionId="Database.Install"BinaryKey="WixCA"DllEntry="CAQuietExec"Execute="deferred"Return="check"Impersonate="no"/> > > > <!--____________________________________________________________________________________________________________ > --> > <!--Our custom tasks run in the InstallExecuteSequence, the following > install > and uninstall conditions included --> > <!--(componentname=2 means to run only on uninstall) vs (componentname>2 > means to run only on install) --> > > <!--____________________________________________________________________________________________________________ > --> > <InstallExecuteSequence> > > <CustomAction="Database.Install.Properties"After="InstallFiles">$db2mobileSQLPackager.Packages>2 > </Custom> > > <CustomAction="Database.Install.Properties.Sql"After="Database.Install.Properties">$db2mobileSQLPackager.Packages>2 > AND USEINTEGRATEDSECURITY=0</Custom> > > <CustomAction="Database.Install"After="Database.Install.Properties.Sql">$db2mobileSQLPackager.Packages>2 > AND USEINTEGRATEDSECURITY=1</Custom> > </InstallExecuteSequence> > > > > ________________________________ > > From:Blair <os...@live.com> > To: General discussion for Windows Installer XML toolset. > <wix-users@lists.sourceforge.net> > Cc: Kagiso Seboni <kagisoseb...@yahoo.com> > Sent: Mon, June 28, 2010 8:59:35 PM > Subject: RE: [WiX-users] Fw: EnterpriseSMS Wix Installation > What happens in 3.x as compared to 2.0 is the following: the extension DLLs > contain, as .net embedded resources, a “bound” wixlib that itself contains > the > <Binary> tags referring to the CA DLL(s) which are further bound inside of > the > wixlib itself. Simply by referencing the embedded Binary tag the fragment > from > the embedded wixlib that contains the <Binary> is included in your linking > which > places the DLL into the MSIs Binary table, from which it is then made > available > for your use during installation and maintenance transactions. The > extension dll > itself can’t be used during transactions, only during the build. > > It should not be necessary to write your own <Binary> element to use any of > the > WiX-supplied extensions. At most, a <BinaryRef> would be appropriate, but > only > if/when the instructions for that extension indicate that is needed. > > Here are the instructions for using the QAQuietExec supplied with 3.x: > http://wix.sourceforge.net/manual-wix3/qtexec.htm. Remember that casing is > significant in Windows Installer (and that includes WiX). > > When upgrading from 2.0 to 3.x, you should be able to use the WixCop.exe > utility > supplied in the toolset to help you transition the schema changes along > with > some of the structural changes such as this one. > > We feel it is more convenient to have just one WiX extension DLL that > “contains” > everything needed for its consumption, instead of the trifecta of extension > dll, > ca dll, and wixlib that was required to be present during builds in 2.0. > This > feature also makes distribution of third-party extension dlls easier > (although > it requires more build-knowledge) for the 3.x toolset vs. the 2.0 > experience. It > also makes the toolset more stable because the extension dll’s code can > depend > on knowing that the ca and wixlib are always present and haven’t likely > been > corrupted or lost. > > If you are using tutorials or example code designed for 2.0, you will need > to > upgrade those examples. > > From:Kagiso Seboni [mailto:kagisoseb...@yahoo.com] > Sent: Monday, June 28, 2010 11:10 AM > To: Blair > Subject: Re: [WiX-users] Fw: EnterpriseSMS Wix Installation > > Basically i cannot find the wixca.dll anywhere on the hard disk even upon > successful installation of the Windows Installer XML v3.5 > > This is the report you'd requested: which includes some of the compilation > errors i've been getting whenever trying the specify the path to the binary > file > wixca.dll which is apparently part of the WixUtilExtension.dll > > <report-redacted-due-to-verbosity/> > > > > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by Sprint > What will you do first with EVO, the first 4G phone? > Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > -- virtually, Rob Mensching - http://RobMensching.com LLC ------------------------------------------------------------------------------ This SF.net email is sponsored by Sprint What will you do first with EVO, the first 4G phone? Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users