InetLoad.dll - MS Inet API based plug-in for http/ftp downloads
Includes simple re-get functionality - reconnect after short 
pause (may require some commands support on the server side, 
but all modern servers do this). 

Requires NSIS 2.03


Command line parameters (NSIS script):

  InetLoad::load [/SILENT] [/POPUP] [/TRANSLATE LANG_PARAMS] URL1 local_file1 [URL2 local_file2 [...]]

For example:

  InetLoad::load "http://dl.zvuki.ru/6306/mp3/12.mp3" "$EXEDIR\12.mp3" "ftp://dl.zvuki.ru/6306/mp3/11.mp3" "$EXEDIR\11.mp3"

/SILENT key hides plug-in' output (both popup dialog and embedded progress bar)
        Not required if 'SilentInstall silent' mode was defined in script.

/POPUP mode displays detailed download dialog instead of embedded progress bar.
       Very useful in .onInit function (i.e. not in Section)

/TRANSLATE allows to translate plug-in text. Usage:

  /TRANSLATE downloading connecting second minute hour plural progress remianing

Default values are:

  downloading - "Downloading %s"
  connecting - "Connecting ..."
  second - "second"
  minute - "minute"
  hour - "hour"
  plural - "s"
  progress - "%dkB (%d%%) of %dkB @ %d.%01dkB/s"
  remaining -  "(%d %s%s remaining)"

Return value - "OK" string if successfull, error description 
string if failed (see InetLoad.cpp for a full set of status 
strings). Result processing may be following:

  Pop $0
  StrCmp $0 "OK" dlok
  MessageBox MB_OK|MB_ICONEXCLAMATION "Download Error, click OK to abort installation" /SD IDOK
  Abort
dlok:
  ...

Takhir Bedertdinov, Moscow, Russia
ineum@narod.ru