2015-03-04 2 views
0

Я создаю установщик для своего приложения Windows через Inno Setup. Само приложение записывает некоторые данные конфигурации в домашнюю папку пользователя в свой собственный подкаталог.Inno Setup: Условно удалить непустой каталог в домашней папке пользователя

Теперь во время удаления я хочу разрешить пользователю выбирать вариант для удаления этой папки (которая изначально не была создана Inno Setup, но приложением).

Что было бы лучшим способом добиться этого в Inno Setup?

ответ

1

В Inno Setup нет явной поддержки. Но вы можете запрограммировать его в сценарии pascal, используя CurUninstallStepChanged event function:

[Code] 

procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep); 
begin 
    if CurUninstallStep = usUninstall then 
    begin 
    if MsgBox('Do you want to delete?', mbConfirmation, MB_YESNO) = idYes then 
    begin 
     DelTree(ExpandConstant('{app}\Folder'), True, True, True); 
    end; 
    end; 
end; 
+0

Возникла проблема с кодом. Он уже вызывается во время установки. Но, очевидно, я хочу спросить пользователя только во время удаления. – Matthias

+0

@ Matthias Извините, вы правы. См. Мой обновленный ответ для альтернативной реализации. –

Смежные вопросы