После установки, я имею следующую структуру папок в папке C:\Program Files (x86)
:Как удалить сгенерированные папки и файлы через Wix при удалении?
Путь к папке generated
является: C:\Program Files (x86)\CompanyName\AppName\generated
Папка generated
содержит вложенные папки и файлы, они будут созданы по заявке во время выполнения через код C#:
var lPathToDir = Path.Combine(lFileService.GetFilePath, pSamAccountName);
if (!Directory.Exists(lPathToDir))
{
Directory.CreateDirectory(lPathToDir);
}
Переменная lPathToDir
может иметь значения:
C:\Program Files (x86)\CompanyName\AppName\generated\user1
// or
C:\Program Files (x86)\CompanyName\AppName\generated\user2
Тогда это выглядит следующим образом:
Моя проблема: После удаления, эти подпапки user1
, user2
не будут удалены. Я использую следующий Wix заявление:
<!-- Target installation folder -->
<Directory Id="ProgramFilesFolder" Name="$(var.ProgramFilesFolder)">
<Directory Id="APPLICATIONFOLDER" Name="$(var.AppFolderName)">
<Directory Id="BIN" Name="bin" />
<Directory Id="HELP" Name="help" />
<Directory Id="GENERATED" Name="generated" />
<Component Id="RemoveAll" Guid="THE-GUID-HERE">
<RemoveFile Id="RemoveAllFilesOnUninstall" Directory="APPLICATIONFOLDER" Name="*.*" On="uninstall" />
<RemoveFolder Id="RemoveAllFoldersOnUninstall" Directory="APPLICATIONFOLDER" On="uninstall" />
<util:RemoveFolderEx On="uninstall" Property="GENERATED" />
</Component>
</Directory>
</Directory>
После удаления:
Почему эти папки остаться и как я могу удалить эти сгенерированные папки из папки установки? Возможно, мне нужно установить какие-либо разрешения при создании этих папок через C#?
[Эта нить] (http://stackoverflow.com/questions/195919/remove-files-when-uninstalling-wix) должен помочь вам. В частности, топ-2 лучших ответов. –
@ Ян Скляренко: Как вы можете видеть, я уже использую решение наилучшего ранжированного ответа без успеха. – Simon
Ах, верно, пропустил это. –