Can a NSIS script download .NET and DirectX from microsoft, then install it?
I don't want to include the installers in my installer because they are huge.
Here's an example for .Net :
Function GetDotnet ;// looks for local copy before downloading, returns path in $0
Pop $0
${If} ${FileExists} "$InitDir\dotnetfx35.exe"
StrCpy $0 "$InitDir\dotnetfx35.exe"
${ElseIf} ${FileExists} "$InitDir\dotnetfx35setup.exe"
StrCpy $0 "$InitDir\dotnetfx35setup.exe"
${Else}
Call DownloadDotnet
StrCpy $0 $0
${EndIf}
Push $0
FunctionEnd
Function DownloadDotnet ;// downloads .Net, returns download path in $0
NSISDL::download "${DotnetDownloadUrl}" "${TempDir}\dotnetfx35setup.exe"
Pop $0
${If} $0 == "cancel"
Quit
${EndIf}
StrCpy $0 "${TempDir}\dotnetfx35setup.exe"
Push $0
FunctionEnd
Function InstallDotnet ;// kicks off the .Net installer
Pop $0
Push $1
ExecWait '"$0" /norestart' $1
FunctionEnd