I only did it in this manner because original requirements dictated the application be copied to the installdir before reading back defaults for entry... turns out the "defaults" are actually blank strings in the application, so nothing ever really needed to be read on fresh install... they do on upgrades/repairs though. I got everything working this way, so figured why change it...
On Thu, Jul 15, 2010 at 11:28 AM, Pally Sandher <pally.sand...@iesve.com>wrote: > Given all that I still don't see why you're trying to do user config on > the ExitDialog instead of during the InstallUISequence. The only thing > you'd need to implement in anything resembling custom code to accomplish > those 4 scenarios would be reading the entries from the app.config to > populate the fields in the repair & upgrade scenarios as reading XML > doesn't have a Standard Custom Action AFAIK in WiX (yet). You seem > pretty set on doing it your way however so good luck. > > 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: Jeremy Rimer [mailto:jeremyri...@gmail.com] > Sent: 15 July 2010 15:17 > To: General discussion for Windows Installer XML toolset. > Subject: Re: [WiX-users] Conditionally Show Dialog Button > basedonInstalleraction (installed vs. removed vs. repaired, etc) > > Sorry if I wasn't clear... > > There are database connection strings stored in the app.config file of > the deployed application... > The WIX installer's purpose is to provide a sysops team the ability to > easily deploy our application across multiple system installations, all > needing different connectivity strings for the DB... > > So far, the installer I wrote does the following: > > Fresh Install: > > - Deploys the software to the InstallDir > - MyExitDialog at the Finish screen has these buttons showing "MODIFY > CONFIG" "FINISH" "CANCEL(disabled at this point)". Clicking Finish > exits the > program leaving the deployed App.Config alone. > - clicking MODIFY CONFIG Prompts the user for connectivity settings > with > empty input fields (no defaults....I originally wanted the defaults > that > came in the App.Config that was deployed, but later we decided it was > unnecessary to prompt ANY default on fresh install.). > - Saving and Exiting will run one more CA to overwrite the App.Config > file with the provided DB strings. (or you can cancel and exit > leaving the > program installed with defaults.) > > Repair > > - Deploys the software to the InstallDir, loading the existing DB > strings > from the deployed App.Config file for later prompting > - MyExitDialog at the Finish screen has these buttons showing "MODIFY > CONFIG" "FINISH" "CANCEL(disabled at this point)". Clicking Finish > exits the > program leaving the deployed App.Config alone. > - clicking MODIFY CONFIG Prompts the user for connectivity settings > with > the default values from the existing configuration > - Saving and Exiting will run one more CA to overwrite the App.Config > file with the provided DB strings. (or you can cancel and exit > leaving the > program installed with defaults.) > > Upgrade > > - Detects existing version, and silently removes it. > - loads the existing DB strings from the deployed App.Config file for > later prompting > - Deploys the software to the InstallDir > - MyExitDialog at the Finish screen has these buttons showing "MODIFY > CONFIG" "FINISH" "CANCEL(disabled at this point)". Clicking Finish > exits the > program leaving the deployed App.Config alone. > - clicking MODIFY CONFIG Prompts the user for connectivity settings > with > the default values from the existing configuration > - Saving and Exiting will run one more CA to overwrite the App.Config > file with the provided DB strings. (or you can cancel and exit > leaving the > program installed with defaults.) > > REMOVE > > - UNINSTALLS and removes the deployed software > - MyExitDialog at the Finish screen has these buttons showing "MODIFY > CONFIG" "FINISH" "CANCEL(disabled at this point)". Clicking Finish > exits the > program leaving the deployed App.Config alone. > - clicking MODIFY CONFIG Prompts the user for connectivity settings > (I'm > trying to quash this part)... > > ...I need to figure out how to suppress the MODIFY CONFIG button from > the MyExitDialog given a REMOVE path... I think the point in the > installation at which this button is shown that REMOVE="ALL" and things > aruond installation are no longer "checkable"... I think I may need to > save another Session Property to set at a certain time in the > installation to 1 or 0 depending on REMOVE="ALL" then or something... > Sound right? > > > > > On Thu, Jul 15, 2010 at 4:25 AM, Pally Sandher > <pally.sand...@iesve.com>wrote: > > > So you're telling us you have trouble knowing the contents of a file > > you're installing on the target machine until after it's been > installed? > > > > > > 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: Jeremy Rimer [mailto:jeremyri...@gmail.com] > > Sent: 14 July 2010 17:40 > > To: General discussion for Windows Installer XML toolset. > > Subject: Re: [WiX-users] Conditionally Show Dialog Button based > > onInstalleraction (installed vs. removed vs. repaired, etc) > > > > funny you mention that... The original requirements of this installer > > were to prompt the user the defaults provided in the App.Config file > > of the deployed program, which meant that we COULDNT prompt the user > > for settings before the files were copied. It turned out that > > particular action was impossible ANYWAY, because you can't modify the > > session for use in dialogs AFTER the files are copied, only prior in > > the UI sequence... So perhaps if I re-engineered this whole thing to > > prompt FIRST, I can avoid these problems? > > > > The way it is currently written, you can either overwrite, or set the > > settings OPTIONALLY before exiting the installer. (i.e. leave the > > app.config unmolested from the installation, or prior installation, > > OR, branch off and edit the entries, and submit to update the deployed > > > app.config file... > > > > > > On Wed, Jul 14, 2010 at 11:29 AM, Pally Sandher > > <pally.sand...@iesve.com>wrote: > > > > > Wouldn't it be better to ask the user the configuration questions > > > during the UI Sequence & make the modifications to the app.config > > > using XMLConfig as part of the install process? That way you could > > > condition when your dialog is shown more appropriately instead of > > > needing multiple ExitDialogs and you'd be following standard > > > expected installer conventions. > > > > > > 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: Jeremy Rimer [mailto:jeremyri...@gmail.com] > > > Sent: 14 July 2010 17:09 > > > To: General discussion for Windows Installer XML toolset. > > > Subject: Re: [WiX-users] Conditionally Show Dialog Button based on > > > Installeraction (installed vs. removed vs. repaired, etc) > > > > > > I put <![CDATA[NOT INSTALLED="1"]]> in those Show elements, but it > > > still showed the MyExitDialog in both the Remove and Install > paths... > > ? > > > > > > On Wed, Jul 14, 2010 at 10:55 AM, Dan Hoeger > > > <dan.hoe...@microsoft.com>wrote: > > > > > > > INSTALLED is still undefined at the end of the initial install. > > > > > > > > So you would want the condition below to be "NOT INSTALLED" to be > > > > true > > > > > > > for the initial install. > > > > > > > > > > > > -----Original Message----- > > > > From: Jeremy Rimer [mailto:jeremyri...@gmail.com] > > > > Sent: Wednesday, July 14, 2010 10:25 AM > > > > To: General discussion for Windows Installer XML toolset. > > > > Subject: Re: [WiX-users] Conditionally Show Dialog Button based on > > > > > Installer action (installed vs. removed vs. repaired, etc) > > > > > > > > I must also add that under my custom exit dialog, I have this: > > > > ============================================== > > > > <InstallUISequence> > > > > <Show Dialog="MyExitDialog" > > > > OnExit="success"><![CDATA[INSTALLED]]></Show> > > > > </InstallUISequence> > > > > > > > > <AdminUISequence> > > > > <Show Dialog="MyExitDialog" OnExit="success" > > > > ><![CDATA[INSTALLED]]></Show> > > > > </AdminUISequence> > > > > ============================================== > > > > ... but this just causes NO exit dialog to show in both Install > > > > and Remove paths of the installer :( -Jeremy > > > > > > > > > > > > On Wed, Jul 14, 2010 at 10:17 AM, Jeremy Rimer > > > > <jeremyri...@gmail.com > > > > >wrote: > > > > > > > > > I have one last problem before my installer is completely > working: > > > > > > > > > > I have a custom EXIT dialog that I created called MyExitDialog > > > > > that contains an extra button that spawns a custom dialog to > > > > > gather application settings from the user to write into the > > > > > App.Config file > > > > > > > > that was deployed and/or existed during installation or repair. > > > > > > > > > > The dialog does its job, but unfortunately it also displays (and > > > > > > does its > > > > > job) after an application has been removed with the installer, > > > > > which > > > > > > > > is useless, of course since there's no more app.config file to > > > > > care about on a removal of the application. > > > > > > > > > > I see in the Publish elements how to conditionally control what > > > > > a button * does*, but how do you conditionally control when a > > > > > button > > > > > > > *shows > > > > itself*in its dialog? > > > > > > > > > > If this is impossible, how can I force the installer to display > > > > > the standard WIX ExitDialog instead of MyExitDialog in the case > > > > > of > > > > > > > a REMOVE operation (vs. repair or new installation?). > > > > > > > > > > my MyExitDialog definition is as follows, and the Control with > > > > > Id="ApplicationSettings" is my button I'd like to hide on > > > > > product > > > > removals: > > > > > ================================ <Dialog Id="MyExitDialog" > > > > > Width="370" Height="270" > > > > > Title="!(loc.ExitDialog_Title)"> > > > > > <Control Id="Finish" Type="PushButton" X="224" Y="243" > > > Width="56" > > > > > Height="17" Default="yes" Cancel="yes" Text="!(loc.WixUIFinish)" > > /> > > > > > <!-- The following Control allows us to go beyond finish > > > > > > to do some settings modifications --> > > > > > <Control Id="ApplicationSettings" Type="PushButton" > X="94" > > > > Y="243" > > > > > Width="130" Height="17" Default="no" Cancel="no" Text="Modify > > > > > Application Settings" ></Control> > > > > > <Control Id="Cancel" Type="PushButton" X="304" Y="243" > > > Width="56" > > > > > Height="17" Disabled="yes" Text="!(loc.WixUICancel)" /> > > > > > <Control Id="Bitmap" Type="Bitmap" X="0" Y="0" > Width="370" > > > > > Height="234" TabSkip="no" Text="!(loc.ExitDialogBitmap)" /> > > > > > <!-- <Control Id="Back" Type="PushButton" X="224" > Y="243" > > > > > Width="56" Height="17" Disabled="yes" Text="!(loc.WixUIBack)" /> > > --> > > > > > <Control Id="BottomLine" Type="Line" X="0" Y="234" > > > Width="370" > > > > > Height="0" /> > > > > > <Control Id="Description" Type="Text" X="135" Y="70" > > > Width="220" > > > > > Height="40" Transparent="yes" NoPrefix="yes" Text=" Click the > > > > > Finish > > > > > > > > button to exit the Setup Wizard. Alternatively, Click the Modify > > > > > > Application Settings button to alter the behavior of the > > > application." /> > > > > > <Control Id="Title" Type="Text" X="135" Y="20" > Width="220" > > > > > Height="60" Transparent="yes" NoPrefix="yes" > > > > Text="!(loc.ExitDialogTitle)" > > > > > /> > > > > > <Control Id="OptionalText" Type="Text" X="135" Y="110" > > > > Width="220" > > > > > Height="80" Transparent="yes" NoPrefix="yes" Hidden="yes" > > > > > Text="[WIXUI_EXITDIALOGOPTIONALTEXT]"> > > > > > <Condition Action="show">WIXUI_EXITDIALOGOPTIONALTEXT > > > > > AND NOT Installed</Condition> > > > > > </Control> > > > > > <Control Id="OptionalCheckBox" Type="CheckBox" X="135" > > > Y="190" > > > > > Width="220" Height="40" Hidden="yes" > > > > > Property="WIXUI_EXITDIALOGOPTIONALCHECKBOX" CheckBoxValue="1" > > > > > Text="[WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT]"> > > > > > <Condition > > > > > Action="show">WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT AND NOT > > > > Installed</Condition> > > > > > </Control> > > > > > </Dialog> > > > > > ================================ > > > > > > > > > > Thanks again, > > > > > > > > > > Rimer > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------ > > > > -- > > > > -- > > > > -------- 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 > > > > > > > > > > > > > > > > ------------------------------------------------------------------ > > > > -- > > > > -- > > > > -------- 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 > > > > > > > -------------------------------------------------------------------- > > > -- > > > -- > > > ------ > > > 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 > > > > > > > > > > > > > > > -------------------------------------------------------------------- > > > -- > > > -------- 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 > > > > > ---------------------------------------------------------------------- > > -- > > ------ > > 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 > > > > > > > > > > ---------------------------------------------------------------------- > > -------- 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 > > > ------------------------------------------------------------------------ > ------ > 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 > > > > > ------------------------------------------------------------------------------ > 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 > ------------------------------------------------------------------------------ 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