无法使用NSIS删除文件
我有一个关于NSIS的问题。 我在(“c:/installer/installer.exe”文件夹中有一个由NSIS创建的安装程序。 当我运行安装程序时,它会在安装文件夹中创建一个日志文件(“c:/installer/installlog.txt”)。成功运行Installer.exe后,我只希望从“c:/Installer”中删除installlog.txt 我有以下功能无法使用NSIS删除文件,nsis,Nsis,我有一个关于NSIS的问题。 我在(“c:/installer/installer.exe”文件夹中有一个由NSIS创建的安装程序。 当我运行安装程序时,它会在安装文件夹中创建一个日志文件(“c:/installer/installlog.txt”)。成功运行Installer.exe后,我只希望从“c:/Installer”中删除installlog.txt 我有以下功能 Function .onInstSuccess call cleanUp ifSilent 0 +2
Function .onInstSuccess
call cleanUp
ifSilent 0 +2
${LogText} "INFO :: Application has been installed"
CopyFiles "$EXEDIR\${INSTALL_LOG}" "$Dir\LogFiles\"
IfFileExists "$Dir\LogFiles\{INSTALL_LOG}" DoNothing CopyAgain
CopyAgain:
CopyFiles "$DIR\${INSTALL_LOG}" "$Dir\LogFiles\"
Delete "$DIR\${INSTALL_LOG}"
goto DoNothing
DoNothing:
SetOutPath $EXEDIR
Delete "$EXEDIR\*.log" ;....................**but the file does not get deleted**
FunctionEnd
有人能告诉我怎么做吗。
我需要尽快修复此问题,非常感谢您的帮助我假设您正在使用日志宏。在最后一次调用${LogText}
之后,您应该调用${LogSetOff}
,这样文件句柄就关闭了,然后您应该能够删除该文件
另外,使用
Delete“$EXEDIR\*.log”
不是一个好主意,您已经知道了文件名…您想删除$DIR\${INSTALL\u log}
?当文件应该被删除时,详细信息日志中会出现什么错误消息?如果文件正在使用,则无法删除,您应该关闭该文件,或者使用/REBOOTOK指示删除指令在重新启动时将其删除