使用 inno setup 甚至 "newly created file by Application" 卸载所有内容

Uninstall everything even "newly created file by Application" using inno setup

我使用 INNO Setup 为我的应用程序 "Demo"(.Net app) 创建了安装程序。在不启动我们的应用程序的情况下,安装和卸载工作顺利。

如果应用程序启动,则卸载不会清除所有内容。因为我的应用程序更新现有文件并在启动期间创建一些文件。

那么我们如何在启动后清理所有内容?

我的脚本代码可用 @ script code

提前致谢

您可以通过两种方式实现。

第一个简单,但不会通知用户删除 new/changed/additional 个文件:

[UninstallDelete]
Type: filesandordirs; Name: "{app}"

{app} 扩展为您应用程序的完整路径。 默认情况下(基于您的代码段)它将等于 DefaultDirName={pf}\{#MyAppName}\{#MyAppName}.

第 2 个问题 MsgBox 代码片段:

[Code]

procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
  if CurUninstallStep = usUninstall then begin
    if MsgBox('Do you want to delete all data files?', mbConfirmation,
        MB_YESNO) = IDYES 
    then begin
      DelTree(ExpandConstant('{app}'), False, True, True);
      //first False makes that the main Directory will not be deleted by function
      //but it will be by the end of Uninstallation
    end;
  end;
end;