Inno Setup:卸载期间重启后删除文件夹
Inno Setup: Deleting folders after restart during uninstallation
我对使用 Inno Setup 在卸载过程中删除文件夹有疑问。
在我的脚本中,我在某些文件上使用了 uninsrestartdelete
标志,并在卸载的最后一步对 {app}
文件夹调用了 DelTree
。有时,在系统重启之前我无法删除所有文件(那些是代码注入 DLL)。在这种情况下,我无法成功删除{app}
文件夹。在系统重新启动时删除 {app}
文件夹的正确方法是什么?当我尝试删除它时,我可以确保文件夹中没有文件。
要安排在重新启动时删除文件或目录,调用 RestartReplace
function 并将 DestFile
(第二个)参数设置为空字符串 (''
)。
RestartReplace(FileToDelete, '');
对于目录,只有当目录为空时才有效。所以你必须先为目录中的所有文件调用RestartReplace
,这些文件不能被删除。
有关详细信息,请参阅 WinAPI function MoveFileEx
及其 MOVEFILE_DELAY_UNTIL_REBOOT
标志,它位于 Inno Setup RestartReplace
函数后面。
我对使用 Inno Setup 在卸载过程中删除文件夹有疑问。
在我的脚本中,我在某些文件上使用了 uninsrestartdelete
标志,并在卸载的最后一步对 {app}
文件夹调用了 DelTree
。有时,在系统重启之前我无法删除所有文件(那些是代码注入 DLL)。在这种情况下,我无法成功删除{app}
文件夹。在系统重新启动时删除 {app}
文件夹的正确方法是什么?当我尝试删除它时,我可以确保文件夹中没有文件。
要安排在重新启动时删除文件或目录,调用 RestartReplace
function 并将 DestFile
(第二个)参数设置为空字符串 (''
)。
RestartReplace(FileToDelete, '');
对于目录,只有当目录为空时才有效。所以你必须先为目录中的所有文件调用RestartReplace
,这些文件不能被删除。
有关详细信息,请参阅 WinAPI function MoveFileEx
及其 MOVEFILE_DELAY_UNTIL_REBOOT
标志,它位于 Inno Setup RestartReplace
函数后面。