Yea, I have the logfile but it's not really indicating to me the failure. The reg keys get deleted, the property initialization from the reg search never seems to happen and the database uninstall script uses the hard coded values from the properties rather than the values from the registry key.
I'll send anyone interested the log file. --Peter -----Original Message----- From: Neil Sleightholm [mailto:n...@x2systems.com] Sent: Thursday, January 29, 2009 2:54 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Install variable not kept around for uninstall? Have you tried running the uninstall with logging enabled (msiexec /x setup.msi /L*vx Setup.log) to see what is going on? Neil -----Original Message----- From: Peter Oehlert [mailto:poehl...@securityinnovation.com] Sent: 29 January 2009 22:09 To: 'General discussion for Windows Installer XML toolset.' Subject: Re: [WiX-users] Install variable not kept around for uninstall? So I persisted my property value to the registry and use a registry search in the property to try to retrieve the value. My issue is 2 fold. One, the property values aren't being populated from the registry properly on uninstall. It might be that the keys are deleted (uninstalled) before they get a chance to be read or it might be they're just being ignored. Second, I'm not sure that I have my custom action set up correctly to get run at uninstall. I need it to get the server name in the expected sql format (either {dbname}\{instancename} or just {dbname}). The relevant values are below. Any help would be appreciated, I really can't figure out what to do at this point. Thanks, Peter It looks something like this: <RegistryKey Id="CreateKey" Root="HKLM" Action="create" Key="$(var.RegKey)"> <RegistryValue Id="SetDatabaseServer" Action="write" Type="string" Name="DatabaseServer" Value="[TMEDATABASESERVER]" /> <RegistryValue Id="SetDatabaseInstance" Action="write" Type="string" Name="DatabaseInstance" Value="[TMEDATABASEINSTANCE]" /> <RegistryValue Id="SetDatabaseName" Action="write" Type="string" Name="DatabaseName" Value="[TMEDATABASENAME]" /> </RegistryKey> And <Property Id="TMEDATABASESERVER" Value="(local)"> <RegistrySearch Id="RegistrySearchTMEDatabaseServer" Type="raw" Root="HKLM" Key="$(var.RegKey)" Name="DatabaseServer" /> </Property> <Property Id="TMEDATABASEINSTANCE" Value="SQLEXPRESS"> <RegistrySearch Id="RegistrySearchTMEDatabaseInstance" Type="raw" Root="HKLM" Key="$(var.RegKey)" Name="DatabaseInstance" /> </Property> <Property Id="TmeDatabase" Value=".\SQL" /> <Property Id="TMEDATABASENAME" Value="TME"> <RegistrySearch Id="RegistrySearchTMEDatabaseName" Type="raw" Root="HKLM" Key="$(var.RegKey)" Name="DatabaseName" /> </Property> Because I support both named and unnamed instances I have a custom action to copy the property from TMEDATABASESERVER and TMEDATABASEINSTANCE to TmeDatabase correctly depending on whether TMEDATABASEINSTANCE is specified. That looks like: <CustomAction Id="CA_SetDatabaseNoInstance" Return="check" Property="TmeDatabase" Value="[TMEDATABASESERVER]" /> <CustomAction Id="CA_SetDatabaseInstance" Return="check" Property="TmeDatabase" Value="[TMEDATABASESERVER]\[TMEDATABASEINSTANCE]" /> <InstallExecuteSequence> <Custom Action="CA_SetDatabaseInstance" Before="InstallValidate"><![CDATA[TMEDATABASEINSTANCE]]></Custom> <Custom Action="CA_SetDatabaseNoInstance" Before="InstallValidate"><![CDATA[NOT TMEDATABASEINSTANCE]]></Custom> </InstallExecuteSequence> -----Original Message----- From: Neil Sleightholm [mailto:n...@x2systems.com] Sent: Saturday, January 24, 2009 2:34 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Install variable not kept around for uninstall? If you need properties at uninstall time you need to persist them somewhere and read them on uninstall, the registry is a common location for these. Neil -----Original Message----- From: Peter Oehlert [mailto:poehl...@securityinnovation.com] Sent: 24 January 2009 19:58 To: 'General discussion for Windows Installer XML toolset.' Subject: [WiX-users] Install variable not kept around for uninstall? So my scenario is that I query the user at install time what the database server, instance, and name should be. I then use these variables in a <sql:SqlDatabase /> element to install a database. This works great, except that if I change any of the default values at uninstall it seems to go back to using the default values. I basically have a UI Dialog with a Edit control that is tied to a property for each of these values. I then dereference the property in the SqlDatabase element. How do I persist this value so that when I uninstall it tries to drop the correct database rather than the default one? Thanks in advance, Peter Oehlert ------------------------------------------------------------------------ ------ This SF.net email is sponsored by: SourcForge Community SourceForge wants to tell your story. http://p.sf.net/sfu/sf-spreadtheword _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------ ---- -- This SF.net email is sponsored by: SourcForge Community SourceForge wants to tell your story. http://p.sf.net/sfu/sf-spreadtheword _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------ ------ This SF.net email is sponsored by: SourcForge Community SourceForge wants to tell your story. http://p.sf.net/sfu/sf-spreadtheword _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ---------------------------------------------------------------------------- -- This SF.net email is sponsored by: SourcForge Community SourceForge wants to tell your story. http://p.sf.net/sfu/sf-spreadtheword _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ This SF.net email is sponsored by: SourcForge Community SourceForge wants to tell your story. http://p.sf.net/sfu/sf-spreadtheword _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users