Inno setup 找出哪个进程阻止修改应用程序数据文件

Inno setup 找出哪个进程阻止修改应用程序数据文件,inno-setup,Inno Setup,有时,我的应用程序的一些文件被某些进程使用。例如,用户打开应用程序日志或类似的东西,却忘记关闭它。这会在安装/升级/卸载时导致一些错误。在这种情况下,我想知道是什么进程在使用文件,并向用户显示一条消息,指示使用了文件 在Inno安装程序中,有没有可能找到阻止脚本修改文件的过程?至少,当我试图在代码部分执行此操作时。Inno安装程序可以自动检查安装的文件是否被某些进程锁定,并允许用户自动关闭(稍后重新启动)应用程序(从5.5.0开始) 确保将设置为其默认值yes 尽管默认情况下,只检查*.exe、

有时,我的应用程序的一些文件被某些进程使用。例如,用户打开应用程序日志或类似的东西,却忘记关闭它。这会在安装/升级/卸载时导致一些错误。在这种情况下,我想知道是什么进程在使用文件,并向用户显示一条消息,指示使用了文件


在Inno安装程序中,有没有可能找到阻止脚本修改文件的过程?至少,当我试图在代码部分执行此操作时。

Inno安装程序可以自动检查安装的文件是否被某些进程锁定,并允许用户自动关闭(稍后重新启动)应用程序(从5.5.0开始)

确保将设置为其默认值
yes

尽管默认情况下,只检查
*.exe、*.dll、*.chm
文件。如果要同时检查其他或所有其他文件,请修改:


如果要通过代码安装某些文件,请使用:

过程注册ExtraCloseApplicationsResources;
开始
RegisterExtraCloseApplicationsResource(
False,ExpandConstant({userappdata}\My Program.log');
结束;


Inno安装程序可以自动检查已安装的文件是否被某些进程锁定,并允许用户自动关闭(稍后重新启动)应用程序(从5.5.0开始)

确保将设置为其默认值
yes

尽管默认情况下,只检查
*.exe、*.dll、*.chm
文件。如果要同时检查其他或所有其他文件,请修改:


如果要通过代码安装某些文件,请使用:

过程注册ExtraCloseApplicationsResources;
开始
RegisterExtraCloseApplicationsResource(
False,ExpandConstant({userappdata}\My Program.log');
结束;

[Setup]
; default
CloseApplications=yes
; check all files
CloseApplicationsFilter=*.*