覆盖由emmbeded安装程序创建的文件

时间:2015-06-01 21:25:02

标签: install nsis

所以我将两个安装程序嵌入到用nsis创建的安装脚本中,整个过程应该安装一个程序然后安装另一个程序,然后用新版本覆盖第二个安装程序创建的三个文件。问题是这三个文件是在第二个安装程序开始工作之前创建的。如何确保仅在第二个安装程序完成它的工作后才创建这些文件?

`

!include "MUI2.nsh"


; The name of the installer
Name "ADIS"

RequestExecutionLevel user

; The file to write
OutFile "ADIS.exe"
Unicode true
; The default installation directory
InstallDir "C:\ADIS"

 !insertmacro MUI_PAGE_WELCOME
 !insertmacro MUI_PAGE_COMPONENTS
 !insertmacro MUI_PAGE_DIRECTORY
 !insertmacro MUI_PAGE_INSTFILES
 !insertmacro MUI_PAGE_FINISH


 !insertmacro MUI_LANGUAGE "Spanish"


 ;--------------------------------

 ; The stuff to install
 Section ""

  ; Set output path to the installation directory.
  SetOutPath $INSTDIR  

  RMDir /r $INSTDIR
 SectionEnd

 SectionGroup "instaladores"
 Section "Firebird"  
  ExecWait "Firebird\Firebird-2.5.4.26856_0_Win32.exe"

 SectionEnd

 Section "Cliente"a
  ExecWait "Cliente\setup.exe"
 SectionEnd

 SectionGroupEnd

 Section "Actualiza"
  ; Put file there
  ;File Nvo\ADIS.exe
  ;File Nvo\ADIS.ICO
  ;File Nvo\ADIS.GDB

  File /r "Nvo\*"


  SectionEnd`

1 个答案:

答案 0 :(得分:0)

你应该运行" Cliente \ setup.exe"默默。大多数安装程序都有一个可以在命令行上使用的静默开关,有些还提供了一个等待开关,因此即使安装程序使用子进程也可以等待。

如果您在文件命令之前添加MessageBox并且在其他安装程序完成之前不点击它会发生什么?