Comment puis-je obtenir INS à installer et d'exécuter des fichiers à partir d'un répertoire temp?

Je suis en utilisant la suite de script NSIS:

Name "My app wrapper"
Outfile "MyAppSetup.exe"
InstallDir $TEMP\MyApp\Install
Function .onInit
SetSilent silent
FunctionEnd
Section ""
    SetOutPath $TEMP\MyApp\Install
    File installer.msi
    File setup.exe
    Exec setup.exe
SectionEnd

L'intention est que le programme d'installation va s'envelopper de ces deux fichiers, le programme d'installation.msi et setup.exe (qui est un programme d'amorçage pour installer prereqs et ensuite appeler l'installateur.msi) dans le MyApp Setup.exe fichier. Lorsque MyAppSetup.exe est exécuté, il doit extraire de l'installateur.msi et setup.exe à l' $Temp\MyApp\répertoire d'Installation, et il doit s'exécuter setup.exe à partir de ce répertoire.

Cependant, lorsque je lance MyAppSetup à partir du bureau, il exécute un setup.exe fichier qu'il trouve sur le bureau, et je n'ai même pas voir un MyApp\répertoire d'Installation dans C:\Temp.

Que dois-je faire pour obtenir ce script pour installer les fichiers au bon endroit et à exécuter le bon fichier?

OriginalL'auteur Mike Pateras | 2011-02-25