2011-01-07 10 views
7

Mam następującą konfigurację, aby usunąć i skopiować plik z WIX.wix Katalog znajduje się w profilu użytkownika, ale nie jest wymieniony w tabeli RemoveFile.

<Directory Id='TARGETDIR' Name='SourceDir'> 
<Directory Id="AppDataFolder" Name="AppDataFolder"> 
    <Directory Id="GleasonAppData" Name="Gleason" > 
    <Directory Id="GleasonStudioAppData" Name="GleasonStudio"> 
    <Directory Id="DatabaseAppData" Name ="Database"> 
    <Directory Id="UserSandboxesAppData" Name="UserSandboxes" /> 

</Directory> 
</Directory> 
</Directory> 
</Directory> 

</Directory> 

<DirectoryRef Id="UserSandboxesAppData"> 
<Component Id="comp_deleteBackup" Guid="*"> 
     <RemoveFile Id="RemoveBackup" Directory="UserSandboxesAppData" 
           Name="DevelopmentBackUp.FDB" On="install" /> 
     <RegistryKey Root="HKCU" Key="Software\Gleason\Database\RemoveBackup"> 
      <RegistryValue Value="Removed" Type="string" KeyPath="yes" /> 
     </RegistryKey> 

    </Component> 
    <Component Id="comp_createBackup" Guid="*"> 
     <CopyFile Id="DBBackup" 
       DestinationDirectory="UserSandboxesAppData" 
       DestinationName="DevelopmentBackUp.FDB" 
       SourceDirectory="UserSandboxesAppData" 
       SourceName="Development.FDB" /> 

     <RegistryKey Root="HKCU" Key="Software\Gleason\Database\CopyBackup"> 
      <RegistryValue Value="Copied" Type="string" KeyPath="yes" /> 
     </RegistryKey>  
    </Component> 
</DirectoryRef> 

mam 4 błędy związane z ICE64 - katalog, „xxx” znajduje się w profilu użytkownika, ale nie jest wymieniony w tabeli RemoveFile. xxx = {UserSandboxesAppData, DatabaseAppData, GleasonStudioAppData, GleasonAppData} Ktoś inny miał bardzo podobny problem tutaj: Directory xx is in the user profile but is not listed in the RemoveFile table.. Ale to rozwiązanie mi nie pomogło.

Co muszę zmienić?

Dziękuję, venkat Rao

Odpowiedz

9

Będziemy chcieli, aby dodać kilka RemoveFolder elementy pod elementami zachować ICE64 zadowolony.

<RemoveFolder Id="RemoveThisFolder" On="uninstall" /> 

Więcej informacji na temat usuwania danych dla każdego użytkownika i zarządzania, aby przejść wszystkie testy sprawdzające lód, sprawdź How to create an uninstall shortcut (and pass all the ICE validation) Rob Mensching.

+0

Nie chcę usuwać żadnych folderów, chcę tylko usunąć jeden plik. Czy jest jakiś sposób na zrobienie tego? –

+1

Będziesz mieć twój RemoveFile podczas instalacji i RemoveFolder na Deinstalacji, aby utrzymać ICE64 szczęśliwy. – saschabeaumont