我创建了一个非常简单的安装程序,它不添加任何注册表项或任何东西。它只是安装一些python可执行程序的一些文件。安装程序仅包含1个步骤,它询问安装目录,然后安装软件。NSIS安装程序:在安装前在目录页面运行一个函数
问题:如果程序的早期版本的安装或由用户选择的目录中包含它的文件,我想通过运行一个函数CleanInstallationDirectory
安装开始之前做一些检查。
我的问题是:我怎样才能运行该功能,当用户安装进度开始后选择了目录和不?我想运行该函数,并根据该函数的返回或基于该函数的内部调用显示一条消息,确认该目录中的所有内容都将被删除,然后如果用户确认,则安装将开始。
替代:如果这是不可能做到这一点,那么我用下面的确定:如果用户说,在安装过程中“否”,安装程序应该回到目录页面,询问关于不同目录。
下面是当前NSIS安装脚本我有:
Function CleanInstallationDirectory
## do stuff
FunctionEnd
Name "My Software"
OutFile "GNOMEAcqInstaller.exe"
InstallDir "D:\MySoftware"
RequestExecutionLevel admin
!define MUI_ABORTWARNING
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_LANGUAGE "English"
Section "Installation" InstallSection
SetOutPath "$INSTDIR"
Call CleanInstallationDirectory
File /r "MyFiles\*"
SectionEnd
LangString DESC_SecDummy ${LANG_ENGLISH} "A test section."
谢谢。