InetLoad plug-in: Difference between revisions
m (wrap lines) |
No edit summary |
||
Line 53: | Line 53: | ||
; /POPUP | ; /POPUP | ||
: | : This mode displays detailed download dialog instead of embedded progress bar. PREFIX parameter sets left part of dialog caption (before '-'), default is "InetLoad plug-in" (if ""). Also useful in .onInit function (i.e. not in Section). | ||
; /BANNER | ; /BANNER |
Revision as of 06:48, 12 October 2005
Author: Takhir (talk, contrib) |
Links
Download:
InetLoad.zip (33 KB)
Description
MS WinInet API based plug-in for http and ftp downloads with better proxy support (compare to NSISdl plug-in). Command line may include few URL/File pairs to be downloaded. Plug-in supports 3 "download in progress" display modes:
- old NSISdl style - additional embedded progress bar and text on the INSTFILES page;
- POPUP dialog mode with detailed info;
- BANNER mode with simple popup window.
Plug-in recognizes Installer's Silent mode and this case hides any output (this feature requires NSIS 2.03 or later). Program implements simple re-get functionality - host reconnect and download from current position after short pause. NSISdl code fragment was used for progress bar displaying in the "old style" mode.
Command line parameters (NSIS script)
InetLoad::load [/PROXY IP:PORT] [/USERNAME PROXY_LOGIN /PASSWORD PROXY_PASSWD] [/NOPROXY] [/NOCANCEL] [/POST TEXT2POST] [/TIMEOUT INT_MS] [/SILENT TEXT2DISPLAY] [/RESUME RETRY_QUESTION] [/POPUP PREFIX | /BANNER CAPTION TEXT] [/TRANSLATE LANG_PARAMS] URL1 local_file1 [URL2 local_file2 [...]] [/END]
- /PROXY
- Overwrites current proxy settings, not required in most cases. IE settings will be used by default.
- /USERNAME
- Proxy username (http only).
- /PASSWORD
- Proxy password (http only). For server (http/ftp) authentication it is possible to use URL encoded name and password, for example http://username:password@nsis.sourceforge.net.
- /NOPROXY
- Disables proxy settings for this connection (if any)
- /NOCANCEL
- Prevents download from being interrupted by user (locks Esc, Alt-F4, Cancel handling)
- /POST
- Sets POST http mode and defines text string to be used in the POST (http only). Disables auto re-get. No char replaces used (%20 and others).
- /TIMEOUT
- Sets INTERNET_OPTION_CONNECT_TIMEOUT, milliseconds, default - IE current parameter value.
- /SILENT
- Key hides plug-in' output (both popup dialog and embedded progress bar). Sets TEXT2DISPLAY to 1006 control, if /silent "" - displays "InetLoad plug-in" default. Not required if 'SilentInstall silent' mode was defined in script (NSIS 2.03 option).
- /RESUME
- On the permanent connection/transfer error instead of exit first displays message box with "resume download" question. Useful for dial-up connections and big files - allows user to restore connection and resume download. Default is "Your internet connection seems to have dropped out!\nPlease reconnect and click Retry to resume downloading...".
- /POPUP
- This mode displays detailed download dialog instead of embedded progress bar. PREFIX parameter sets left part of dialog caption (before '-'), default is "InetLoad plug-in" (if ""). Also useful in .onInit function (i.e. not in Section).
- /BANNER
- Displays simple popup dialog (MSI Banner mode) and sets dialog CAPTION ("NSIS Installer - InetLoad" is default) and TEXT (up to 3 lines using $\n).
- /END
- Allows to limit plug-in stack reading (optional, required if you stores other vars in the stack).
- /TRANSLATE
- Allows translating plug-in text in the POPUP or "old style" (NSISdl) modes (see Readme for parameters). In the BANNER mode text is also customizable.
Examples
InetLoad::load "http://dl.zvuki.ru/6306/mp3/12.mp3" "$EXEDIR\12.mp3" \ "ftp://dl.zvuki.ru/6306/mp3/11.mp3" "$EXEDIR\11.mp3" Pop $0
InetLoad::load /BANNER "" "Cameron Diaz download in progress..." \ "http://www.dreamgirlswallpaper.co.uk/fiveyearsonline/wallpaper/Cameron_Diaz/camerond09big.JPG" \ "$EXEDIR\cd.jpg" Pop $0 StrCmp $0 "OK" dlok MessageBox MB_OK|MB_ICONEXCLAMATION "Download Error, click OK to abort installation" /SD IDOK Abort dlok: ...
Plug-in returns "OK" string if successful, error description string if failed (see included InetLoad.cpp file for a full set of status strings). Usage and result processing samples are included to the package.