Adrian,

thank you very much for this workaround. At the time of reading it, I
did not belive that this could help in any way - at least did I alreay
have an component which has INSTALLLOCATION as "Directory" attribute and
the folder that remains was not empty. Nevertheless, I tryed it and
added your component line and it works :). Now all installed parts are
removed completely.
The log confirms this:
MSI (s) (D8:10) [18:33:41:007]: PROPERTY CHANGE: Adding INSTALLLOCATION
property. Its value is 'E:\Program Files\MyAppName'.

(before it was 'C:\Program Files\MyAppName')

Still, the whole thing is strange and it seems as this is a bug in MSI -
or is there any logical explanation for this?

Thanks,
Tom

Adrian Gantoi wrote:
> Hi,
>
> I am not sure if your problem comes from this, but I experienced in the past 
> a similar problem with yours.
> Windows Installer did not correctly resolve the real location of a folder in 
> a Repair/Uninstall scenario.
> This happened to me for folders which did not have any files installed inside 
> (only other folders).
> MSI seems to resolve the folder path based on components referencing the 
> folder.
> I managed to have the proper values after defining some components with the 
> folders as KeyPath, like below:
> <Component Id="compId" Guid="{....}" Directory="put here directory id" 
> KeyPath="yes" />
> Hope this helps.
>
> Adrian.
>
>
>
>
>
> ________________________________
> From: Tom Kazimiers <2voo...@gmx.de>
> To: General discussion for Windows Installer XML toolset. 
> <wix-users@lists.sourceforge.net>
> Sent: Wednesday, July 29, 2009 5:17:19 PM
> Subject: Re: [WiX-users] Uninstall Problem if installed on non system 
> partition
>
> Hi,
>
> thans for the hint, with the verbose logging (I guess "/lvx!
> install.log" for msiexec will do it?). The files get installed in the
> correct directory (namely that one the user chooses in the install
> settings dialog). The variable saving this location is named
> INSTALLLOCATION. I use it in the following structure:
>
>     <!--Directory Structure-->
>         <Directory Id="TARGETDIR" Name="SourceDir"> <!-- virtual folder,
> must be outermost-->
>             <Directory Id="ProgramFilesFolder">
>                     <Directory Id="INSTALLLOCATION" Name="MyAppName">
>                     ...content of my folder...
>
>
> And I set the the following WiX variable:
>
> <!--Userinterface properties-->
>         <Property Id="WIXUI_INSTALLDIR" Value='TARGETDIR' />
>
>
> I tryed that one with INSTALLLOCATION, too, but it did not change anything.
>
> Well, the install log says the following about INSTALLLOCATION:
>
> ...
> MSI (c) (E0:88) [15:54:53:011]: PROPERTY CHANGE: Adding INSTALLLOCATION
> property. Its value is 'C:\Program Files\MyAppName\'.
> ...
> MSI (s) (FC:78) [16:09:16:756]: Dir (target): Key: TARGETDIR    ,
> Object: E:\
> ...
> MSI (c) (E0:88) [15:54:53:081]: Dir (target): Key: INSTALLLOCATION    ,
> Object: C:\Program Files\MyAppName\
> ...
> MSI (c) (E0:88) [15:54:58:730]: PROPERTY CHANGE: Adding _BrowseProperty
> property. Its value is 'INSTALLLOCATION'.
> ...
> MSI (c) (E0:88) [15:55:01:383]: PROPERTY CHANGE: Modifying
> INSTALLLOCATION property. Its current value is 'C:\Program
> Files\MyAppName\'. Its new value: 'E:\Program Files\MyAppName\'.
> ...
> MSI (c) (E0:88) [15:55:03:186]: Switching to server: ...
> INSTALLLOCATION="E:\Program Files\MyAppName\" TARGETDIR="E:\" ...
> ROOTDRIVE="E:\"
> ...
> [and some more locations, but erverywhere it is like it should be]
>
>
> Now, if I uninstall with the same MSI the GUI works without any problem
> (beside that somehow a small font is set) and the following occurences
> are in the log:
>
>
> ...
> MSI (s) (FC:78) [16:09:16:709]: PROPERTY CHANGE: Adding INSTALLLOCATION
> property. Its value is 'C:\Program Files\MyAppName\'.
> ...
> MSI (s) (FC:78) [16:09:16:779]: Dir (target): Key: INSTALLLOCATION    ,
> Object: C:\Program Files\MyAppName\
> ...
> MSI (s) (FC:78) [16:09:19:069]: Executing op:
> SetTargetFolder(Folder=C:\Program Files\MyAppName\)
> MSI (s) (FC:78) [16:09:19:079]: Executing op:
> FileRemove(,FileName=MyAppName.exe,,ComponentId={07F89156-0254-4C41-AC90-282090205D32})
> ...
> MSI (s) (FC:78) [16:09:18:506]: Executing op:
> RegRemoveValue(,Value=[INSTALLLOCATION]MyAppName.exe,0,)
>
>
> Clearly, the FileRemove can not work out since INSTALLLOCATION is set to
> the wrong value. But how comes that there is not the right value in it?
> Have I to tell MSI that to save it?
> One solution would be to save the INSTALLLOCATION in the registry (in
> fact, I to this already) and read it in on uninstall and replace
> INSTALLLOCATION. But I would not like to do this, since this value could
> be changed and get missed (or sth.) - It would be gread if you Chris, or
> someone else, has a hint for me.
>
> Thanks ain advance,
> Tom
>
>
> Chris Lord wrote:
>   
>> Tom,
>>
>> I do not know.  I have never had any problems with the cache but then 
>> again the installers I have built aren't exactly complicated!
>>
>> However, first place I would look is to run an install on a fresh 
>> machine with verbose logging and see if the files are being installed to 
>> the directory you expect.
>>
>> Chris
>>
>>
>> -----Original Message-----
>> From: Tom Kazimiers [mailto:2voo...@gmx.de] 
>> Sent: Monday, July 27, 2009 17:11
>> To: General discussion for Windows Installer XML toolset.
>> Subject: Re: [WiX-users] Uninstall Problem if installed on non system 
>> partition
>>
>> Chris,
>>
>> thanks for the hint with the MSI log. I looked into it and found 
>> something odd:
>> The INSTALLLOCATION-Directory property has another value then where the 
>> application is installed. This is strange since it is declared as the 
>> base directory in the setup sources and not modified anywhere else.
>>
>> Coulds this have something to do with MSI caching?
>>
>> Thanks,
>> Tom
>>
>> Chris Lord wrote:
>>  
>>     
>>> Tom
>>>
>>> For files your installer places on the hard disk, the uninstall should 
>>>    
>>>       
>>  
>>     
>>> remove them automatically unless they are still in use.  There should 
>>> be no need for you to manually remove these files.  Directories are a 
>>> different matter as the uninstall will not remove it if the directory 
>>> is not empty.  This typically happens if the application generates its 
>>>    
>>>       
>>  
>>     
>>> own files when running.  The uninstaller does not know anything about 
>>> them and thus leaves both the files and the directory intact.
>>>
>>> Run the uninstall from the command line using msiexec to get a verbose 
>>>    
>>>       
>>  
>>     
>>> log and see what the log says.  It should give you a clue why the 
>>> files are not removed.
>>>
>>> Chris
>>>
>>> -----Original Message-----
>>> From: Tom Kazimiers [mailto:2voo...@gmx.de]
>>> Sent: Monday, July 27, 2009 04:07
>>> To: General discussion for Windows Installer XML toolset.
>>> Subject: [WiX-users] Uninstall Problem if installed on non system 
>>> partition
>>>
>>> Hi,
>>>
>>> the installer I use is written with WiX 3 and everything works, except 
>>>    
>>>       
>>  
>>     
>>> one little problem with the uninstallation process. If I don't change 
>>> the default install location (which is on the system partition of
>>> Windows) everything works as expected (everything gets removed on an 
>>> uninstall). But if I use a different install location only some files 
>>> get removed (in fact, only some sub folders with their content). Files 
>>>    
>>>       
>>  
>>     
>>> that lie directly in the install location folder do not get removed.
>>>
>>> Has anyone experienced such a problem before? If I compare both 
>>> component declarations in the wix source, I see no fundamental 
>>> differences that could cause this.
>>>
>>> In other installers where sometimes <RemoveFile> and <RemoveDirectory> 
>>>    
>>>       
>>  
>>     
>>> tags used.
>>> When are they needed and when not?
>>>
>>> Thanks in advance,
>>> Tom
>>>
>>>
>>> ----------------------------------------------------------------------
>>> --
>>> ------
>>> _______________________________________________
>>> WiX-users mailing list
>>> WiX-users@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>>
>>>
>>>
>>> ----------------------------------------------------------------------
>>> -------- _______________________________________________
>>> WiX-users mailing list
>>> WiX-users@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>>
>>>  
>>>    
>>>       
>> ------------------------------------------------------------------------
>> ------
>> _______________________________________________
>> WiX-users mailing list
>> WiX-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
>> trial. Simplify your report design, integration and deployment - and focus 
>> on 
>> what you do best, core application coding. Discover what's new with 
>> Crystal Reports now.  http://p.sf.net/sfu/bobj-july
>> _______________________________________________
>> WiX-users mailing list
>> WiX-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>>  
>>     
>
>
> ------------------------------------------------------------------------------
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
> trial. Simplify your report design, integration and deployment - and focus on 
> what you do best, core application coding. Discover what's new with 
> Crystal Reports now.  http://p.sf.net/sfu/bobj-july
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
>
>       
> ------------------------------------------------------------------------------
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
> trial. Simplify your report design, integration and deployment - and focus on 
> what you do best, core application coding. Discover what's new with 
> Crystal Reports now.  http://p.sf.net/sfu/bobj-july
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>   


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to