Inno setup 卸载INNO安装程序最初未安装的文件

Inno setup 卸载INNO安装程序最初未安装的文件,inno-setup,uninstallation,Inno Setup,Uninstallation,我对产品的安装程序/卸载程序使用Inno安装程序。我的软件具有自动更新功能,在此期间,它不仅可以更改现有的二进制文件,还可以添加新的二进制文件。这些是放置在产品安装目录中的附加产品文件,而不是数据文件 Inno安装卸载程序只知道按安装时最初放在那里的名称卸载文件。由于自动更新不会更改构成卸载程序的unins000.exe或unins000.dat文件,卸载时删除这些新产品文件的适当方法是什么?我看到的最简单的方法是在程序目录中有一个批处理文件,用于删除安装后添加的所有文件,并在卸载时执行: [

我对产品的安装程序/卸载程序使用Inno安装程序。我的软件具有自动更新功能,在此期间,它不仅可以更改现有的二进制文件,还可以添加新的二进制文件。这些是放置在产品安装目录中的附加产品文件,而不是数据文件


Inno安装卸载程序只知道按安装时最初放在那里的名称卸载文件。由于自动更新不会更改构成卸载程序的unins000.exe或unins000.dat文件,卸载时删除这些新产品文件的适当方法是什么?

我看到的最简单的方法是在程序目录中有一个批处理文件,用于删除安装后添加的所有文件,并在卸载时执行:

 [UninstallRun]
Filename: cleanup.cmd; WorkingDir: {app}; Flags: shellexec runminimized
卸载的第一步是执行
UninstallRun
命令,因此这应该可以正常工作。如果您不想运行批处理脚本,可以轻松创建自己的cleanup.exe来删除文件


执行自动更新时,还必须更新清理文件,使其包含随当前更新添加的所有文件。

我使用了类似的解决方案。我有一个自定义DLL卸载程序调用和导出。在维护原型的同时,我可以在更新时修改这个导出DLL的内容。该代码删除更新添加的所有文件。