There is no way (that I know of) to delete a directory where something 
has an open handle on that. The only way is to make sure all programs 
have stopped and no open programs have that as their current directory.

It's just like opening cmd.exe, cd'ing to a directory and trying to 
delete that directory from explorer. Can't be done.

Dave

On 12/17/2013 10:50 PM, Suvrajyoti Panda wrote:
> Hi Phil,
>
> I modified the structure in my main WIX file as below:
>
> <Directory Id='TARGETDIR' Name='SourceDir'>
>         <Directory Id='EnergySolutionsConfig' Name="$(var.rootFolder)">
>             <Component Id="parentOfAll"
> Guid="22AD76A4-448E-41DB-85A0-A04E9774A466" KeyPath="yes">
>               <RemoveFolder Id= "removeParent" On="uninstall"/>
>             </Component>
>
> After installing i traversed to "C:\Energy Solutions
> International\PFWService\config\access" then uninstalled the path
> "C:\Energy Solutions International\PFWService\" still exists, all the
> files are deleted though.
>
> On 17-12-2013 21:32, Phil Wilson wrote:
>> Why not just try a RemoveFolder and see if it solves the problem?  It is
>> the most likely solution, as suggested before.
>>
>> Phil Wilson
>>
>>
>> On Tue, Dec 17, 2013 at 5:16 AM, Suvrajyoti Panda <suvrajyo...@contata.co.in
>>> wrote:
>>> I just thought i needed to reiterate the issue for better clarity:
>>>
>>> Below is the directory structure in my source .wxs file:
>>>     <Directory Id='TARGETDIR' Name='SourceDir'>
>>>          <Directory Id='EnergySolutionsConfig' Name="Energy Solution
>>> International">
>>>           <Directory Id='PFWServiceFolder' Name="PFWService">
>>>             <Directory Id='CONFIG' Name="config">
>>>               <Component Id="x86RegEntPFWConfig"
>>> Guid="5DAD9B46-43BB-42D2-91E9-F2248369AA68" Win64="no">
>>>                 <RegistryValue Id="x86PFWConfigRegValue" Root="HKLM"
>>> Key="SOFTWARE\[Manufacturer]" Name="ConfigPath" Value="[CONFIG]"
>>>                    Type="string" />
>>>               </Component>
>>>               <Component Id="x64RegEntPFWConfig"
>>> Guid="57240178-4A44-4C6F-A11C-B4DE99573DE0" Win64="yes">
>>>                 <RegistryValue Id="x64PFWConfigRegValue" Root="HKLM"
>>> Key="SOFTWARE\[Manufacturer]" Name="ConfigPath" Value="[CONFIG]"
>>>                    Type="string" />
>>>               </Component>
>>>             </Directory>
>>>             </Directory>
>>>          </Directory>
>>>        </Directory>
>>>
>>> The heat harvests directories from a location D:\Configrelease which has
>>> directories such as "command_processors". The produces config.wxs file
>>> that has below structure:
>>> <Fragment>
>>>            <DirectoryRef Id="CONFIG">
>>>                <Component Id="cmpC405575C36944E434C00DCE528FA79EA"
>>> Guid="{0EDAF860-B5C3-4C93-BDD7-EB1947D94749}">
>>>                    <File Id="fil62BA9BFC68F4D3C2DE913D9ABFEDC429"
>>> KeyPath="yes" Source="$(var.ConfigPath)\PFWConfiguration.xml" />
>>>                </Component>
>>>                <Directory Id="dirB9FCE785B12AD5549EC71DC5DC66ED48"
>>> Name="archives">
>>>
>>>                </Directory>
>>>                <Directory Id="dirB8C0CFD798C8A57234B0C04A4E266B86"
>>> Name="command_processors">
>>>                    <Component Id="cmpE03A5A54FF75ABF0FA6DA591BC4F3152"
>>> Guid="{F2158D98-1DC2-4348-89FC-65A2115084B6}" KeyPath="yes">
>>>                        <CreateFolder />
>>>                    </Component>
>>>
>>> After i run the installer, i browse to "C:\Energy Solutions
>>> International\PFWService\config\command_processors" and keep this path
>>> open, and then uninstall the directory structure that does not get
>>> removed is "C:\Energy Solutions International\PFWService".
>>>
>>> Is it because of the <CreateFolder> in the config.wxs(as Wesley had
>>> suggest) file that heat creates that i am facing this issue. If so what
>>> is the way out. Hope i have explained the situation better this time,
>>> apologies if i created any confusion.
>>>
>>> Regards,
>>> SuvraJyoti
>>>
>>> On 17-12-2013 14:27, Suvrajyoti Panda wrote:
>>>> Hey Blair,
>>>>
>>>> The scenario you have mentioned in the first para of your response is
>>>> exactly what is happening. So is there no way that we can handle the
>>>> folder removal on uninstall even if that path is open, or this is a
>>>> known issue?
>>>>
>>>> Regards,
>>>> SuvraJyoti
>>>> On 17-12-2013 14:14, Blair Murri wrote:
>>>>> If a file being removed can’t be moved, then it will be marked for
>>> removal during reboot, and unfortunately the folder will then be left
>>> behind (because only file delete records are placed into the reboot
>>> sequence, not folders). After reboot there isn’t an installation left to
>>> run to cleanup any further.
>>>>>
>>>>> Most of the time, files still in use can be moved (even if they are
>>> still loaded in other processes) and the folder is thus removed during the
>>> installation transaction (before the reboot) and the moved file is then
>>> removed as part of the reboot sequence.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> -Blair
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> From: Suvrajyoti Panda
>>>>> Sent: Monday, December 16, 2013 8:57 PM
>>>>> To: General discussion for Windows Installer XML toolset.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> No Wesley, I have not used any create folder over here.
>>>>>
>>>>> Regards,
>>>>> SuvraJyoti
>>>>>
>>>>> On 16-12-2013 20:03, Wesley Manning wrote:
>>>>>> Did you use CreateFolder to create this directory?  If so I think you
>>> need to use RemoveFolder to remove the folder.  Not sure about that though.
>>>>>> -----Original Message-----
>>>>>> From: Suvrajyoti Panda [mailto:suvrajyo...@contata.co.in]
>>>>>> Sent: December-16-13 12:37 AM
>>>>>> To: General discussion about the WiX toolset.
>>>>>> Subject: Re: [WiX-users] Uninstall by Installer not removing the path
>>> created if that path is open on the system
>>>>>> Hey Wesley,
>>>>>>
>>>>>> checked it on a reboot, that does not work. The structure is still
>>> there. Any others suggestions guys?
>>>>>> Regards,
>>>>>> SuvraJyoti
>>>>>> On 13-12-2013 20:13, Wesley Manning wrote:
>>>>>>> It might be removed on a reboot.  If you had folder open, then
>>> windows installer can't uninstall it.  But I think it marks it for removal.
>>>    I know for sure files have this behaviour but I'm not sure about folders.
>>>>>>> -----Original Message-----
>>>>>>> From: Suvrajyoti Panda [mailto:suvrajyo...@contata.co.in]
>>>>>>> Sent: December-13-13 1:48 AM
>>>>>>> To: General discussion about the WiX toolset.
>>>>>>> Subject: [WiX-users] Uninstall by Installer not removing the path
>>>>>>> created if that path is open on the system
>>>>>>>
>>>>>>> Hi All,
>>>>>>>
>>>>>>> I just saw this behaviour. My installer creates the following
>>> :"C:\Energy Solutions International\PFWService\config", if this path is
>>> open and i run the uninstall from control panel, then the path
>>> remains("C:\Energy Solutions International\PFWService\config") although
>>> files under it is removed. Is it expected behavior or incorrect. If
>>> incorrect what is the workaround for the same.


------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to