2011-01-07 2 views
7

다음 구성을 사용하여 WIX에서 파일을 삭제하고 복사 할 수 있습니다. 디렉토리 'XXX'사용자 프로필에 있지만 RemoveFile 테이블에 나열되지 않은 - 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 = {UserSandboxesAppData, DatabaseAppData, GleasonStudioAppData, GleasonAppData} 누군가 다른 곳에서 매우 비슷한 문제가 발생했습니다 : Directory xx is in the user profile but is not listed in the RemoveFile table.. 하지만 그 해결책이 도움이되지 못했습니다.

무엇을 변경해야합니까?

는 벤 카트 라오을 주셔서 감사합니다

답변

9

당신은 행복 ICE64을 유지하기 위해 구성 요소에 따라 일부 RemoveFolder 요소를 추가 할 수 있습니다. 사용자 별 데이터를 제거하고, 모든 ICE 검증 테스트를 통과 롭 Mensching에 의해 How to create an uninstall shortcut (and pass all the ICE validation)을 확인하기 위해 관리하는 방법에 대한 자세한 내용은

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

.

+0

폴더를 삭제하지 않으려 고합니다. 한 파일 만 삭제하려고합니다. 그렇게 할 수있는 방법이 있습니까? –

+1

ICE64를 행복하게 유지하려면 설치시 RemoveFile을, 제거시 RemoveFolder를 사용하십시오. – saschabeaumont

관련 문제