当前位置: 首页 > 知识库问答 >
问题:

inno 安装程序询问用户是否卸载文件

董霖
2023-03-14


在安装过程中,我添加了带有文件的文件夹:
来源:{#DBPath};德迪尔:“{app}\DataBase”;
我希望在卸载中,inno-set会询问用户是否
删除文件

我该怎么做
谢谢,阿维。

共有1个答案

年凯康
2023-03-14

如果你想保留一个文件夹,那么你应该添加< code > uninstneveruninstall 标志来指示inno-setup在卸载过程中不要删除这个文件夹。然后你可以用Pascal脚本有条件地删除这个文件夹

这是如何做到这一点:

[Files]
Source: {#DBPath}; DestDir: {app}\DataBase; Flags: uninsneveruninstall

[Code]
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
  if CurUninstallStep = usPostUninstall then
  begin
    if MsgBox('Do You Want To Delete DataBase Folder?', mbConfirmation, MB_YESNO or MB_DEFBUTTON2) = IDYES then
    //this is the msg that will display after uninstall,change is as you prefer 
    begin
        DelTree(ExpandConstant('{app}\DataBase'), True, True, True);
    end;
  end;
end;
 类似资料:
  • 在Inno设置帮助中: dontcreatekey 当指定此标志时,如果用户系统中不存在该项,安装程序将不会尝试创建该项或任何值。如果该项不存在,则不会显示错误消息。 通常,此标志与标志结合使用,用于在卸载期间删除密钥但在安装期间不创建它们。 我的程序在当前用户自动启动部分下创建一个注册表值(类型为),但前提是用户从设置屏幕显式执行此操作。 我想让卸载程序清除这个条目,所以我在Inno安装项目中添

  • 我想首先将现有文件“我的程序旧”重命名为“我的程序v2”,但前提是“我的程序v2”还不存在。 然后我想将“我的程序”重命名为“我的程序旧”,但前提是“我的程序旧”不存在。 然后我想从安装程序安装‘我的程序',但前提是’我的程序‘还不存在。 我将非常感谢任何指导!

  • 安装与卸载 Compose 支持 Linux、macOS、Windows 10 三大平台。 Compose 可以通过 Python 的包管理工具 pip 进行安装,也可以直接下载编译好的二进制文件使用,甚至能够直接在 Docker 容器中运行。 Docker Desktop for Mac/Windows 自带 docker-compose 二进制文件,安装 Docker 之后可以直接使用。 $

  • 本文向大家介绍Oracle安装卸载图文教程详解,包括了Oracle安装卸载图文教程详解的使用技巧和注意事项,需要的朋友参考一下 ORACLE安装与卸载步骤详解,供大家参考,具体内容如下 ORACLE安装步骤 1、 将win32_11gR2_database_1of2.zip与win32_11gR2_database_1of2.zip 解压到当前目录(PS:选中两个压缩包后右键解压到当前文件夹;必须

  • 在我的< code>[Files]部分中,我有以下内容: 在部分我有: 最后,在部分,我有: 现在,在这个版本的程序中,我已经将这两个DLL文件的功能合并到另一组DLL文件中: 因此, DLL 文件。现在,我知道如果它们存在,我可以简单地删除它们: 但据我所知,这不会像 中那样触发 DLL 文件的注销。 我该怎么做?在安装过程中删除并注销DLL文件(如果存在)?

  • 根据文档,Inno Setup使用AppName或AppId允许您创建一个更新程序,该程序将自动将其文件放在用户安装初始应用程序的同一路径中。 我需要能够根据AppId确定Inno Setup将文件安装到哪里,但不是从Inno Setup中。例如,我需要能够从Python脚本中确定这一点。 一个用例:修补安装程序位置中的文件。打包整个安装程序只是为了有条件地添加或编辑文本文件中的一行是矫枉过正的。