2014-07-16 2 views
0

나는 이것을 어떻게하는지에 대한 답변을 많이 찾았습니다. 몇 가지 대답을 들었지만, WiX 지식에 대해 충분하지 않거나 고급 적이 아니 었습니다.WiX : appdata 폴더에있는 파일 및 하위 폴더 삭제하기

WiX 제거 프로그램을 사용하는 동안 응용 프로그램 (설치 프로그램 아님)이 만든 appdata 폴더에서 폴더, 파일 및 하위 폴더 (상위 폴더는 물론)를 어떻게 삭제할 수 있습니까?

제어판을 사용하여 응용 프로그램을 제거하면 AppData 내의 폴더가 삭제되지만 설치 프로그램을 사용하여 응용 프로그램을 제거하는 경우에는 해당되지 않습니다.

도움을 주시면 감사하겠습니다.

내가 현재 가지고 :

<Property Id="APPLICATIONFOLDER"> 
    <RegistrySearch Root="HKCU" Key="Software\AppCo\AppName" Type="raw" Id="APPLICATIONFOLDER_REGSEARCH" Name="PrivateDir" /> 
</Property> 

<DirectoryRef Id='PrivateDataFolder'> 
    <Component Id="PrivateData" Guid="*"> 
     <CreateFolder Directory="PrivateDataFolder"/> 

     <util:RemoveFolderEx On="uninstall" Property="APPLICATIONFOLDER" /> 

     <RemoveFolder Id="PrivateDataFolder" On="uninstall"/> 
     <RegistryValue Root="HKCU" Key="Software\AppCo\AppName" Name="PrivateDir" Type="string" Value="[PrivateDataFolder]" KeyPath="yes"/> 
    </Component> 
</DirectoryRef> 

그러나이 작동하지 않는 것 같습니다.

편집 2 : 일부 파일은 폴더에서 제거되지만 전체 폴더와 하위 폴더는 제거되지 않습니다.

+0

나는 제어판이나 msi 파일을 사용하여 제거가 msiexec.exe 시스템 (즉, Windows 설치 프로그램 시스템)에 의해 수행되었다고 생각했습니다. – mcy

답변

0

RemoveFolderEx을 사용하고 AppData의 상위 폴더에 구성 요소를 할당합니다. Bob Arnson이 더 자세히 설명합니다 here. 지정된 디렉터리를 사용할 수 없으므로 삭제하려는 AppData 폴더의 경로를 가져올 레지스트리 키를 만드는 것이 현명한 방법입니다. 프로젝트에 UtilExtension을 포함시켜야합니다.

+0

나는 원래의 질문을 편집 했으니 제발 내가 어디서 잘못 걸 었는지 좀 봐 주시겠습니까? – Daniel

관련 문제