2011-01-07 5 views
7

WIXからファイルを削除してコピーするには、次の設定が必要です。wixディレクトリがユーザプロファイルにありますが、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> 

私はICE64に関連する4つのエラーが出る - ディレクトリ「XXX」は、ユーザプロファイルであるが、REMOVEFILEテーブルにリストされていません。 xxx = {UserSandboxesAppData、DatabaseAppData、GleasonStudioAppData、GleasonAppData} 他の誰かがここで非常に似た問題を抱えていました:Directory xx is in the user profile but is not listed in the RemoveFile table.。しかし、その解決策は私を助けませんでした。

変更する必要があるのは何ですか?

は、あなたが幸せICE64を維持するために、あなたのコンポーネントの下にいくつかのRemoveFolder要素を追加したいと思う ヴェンカトラオ

答えて

9

、ありがとうございました。ユーザごとのデータを削除し、すべてのICE検証テストに合格するための管理の詳細については

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

、ロブMenschingによってHow to create an uninstall shortcut (and pass all the ICE validation)をチェックしてください。

+0

私はフォルダを削除するwan'tをしない、私はちょうど1つのファイルを削除したい。それを行う方法はありますか? –

+1

インストール時にRemoveFileを、アンインストール時にRemoveFolderを使用してICE64を幸せに保ちます。 – saschabeaumont

関連する問題