Inno Download Plugin


IDP is a plugin for Inno Setup, which allows you to download files as part of your installation.


  • Supports Unicode & ANSI Inno Setup versions
  • FTP, HTTP and HTTPS protocols
  • Configurable proxy settings
  • Multiple languages
  • Free and open source under Zlib license

Supported languages:

  • Belarusian
  • Brazilian Portuguese
  • Bulgarian
  • Chinese (simplified)
  • Czech
  • English
  • Finnish
  • French
  • German
  • Hungarian
  • Italian
  • Polish
  • Russian
  • Slovak
  • Spanish

Basic example:

#include <idp.iss>

Source: "{tmp}\"; DestDir: "{app}"; Flags: external; ExternalSize: 1048576
Source: "{tmp}\"; DestDir: "{app}"; Flags: external; ExternalSize: 1048576
Source: "{tmp}\"; DestDir: "{app}"; Flags: external; ExternalSize: 1048576

Name: "{group}\{cm:UninstallProgram,My Program}"; Filename: "{uninstallexe}"

procedure InitializeWizard();
    idpAddFileSize('', ExpandConstant('{tmp}\'), 1048576);
    idpAddFileSize('', ExpandConstant('{tmp}\'), 1048576);
    idpAddFileSize('', ExpandConstant('{tmp}\'), 1048576);


Download (Latest version is 1.5.1 – 18 Apr 2016):


12 thoughts on “Inno Download Plugin

    • This plugin is capable of downloading any file (zip or any format). But you need to use the unzip tool to extract the file after downloading.

      Following link gives you an example on how to use the unzip functionality.

  1. Приветствую! Советую не тянуть и экспортировать свой проект с закрывающегося Google Code на GitHub, а то его уже трижды экспортировали разные люди и кодовая база множится бесконтрольно.

  2. Pingback: [ASK] programming - How can I use a SharePoint Site (365) as the source for Inno Setup files? | Some Piece of Information

  3. Приветствую. У меня небольшая проблема с загрузкой файла. Файл качается нормально, но завершение загрузки занимает долгое время, в результате чего часто вылетает ошибка “Загрузка не удалась: Операция прервана по таймауту”. Где можно увеличить время ожидание до появления ошибки?

  4. How to take the installation forward or cancel it the download fails ?
    I’m using idpaddfile, idpsetlogin and idpDownloadAfter functions for downloading a file by authentication.
    I cannot cancel the installation or click on the next button if the download fails, because those buttons are invisible in my installer.
    Any help would be appreciated 🙂

  5. Does this lib have a function available to post data to the server and get a result back?
    My old script (with the older sherlock solution which only supports http) works as follow:
    1. Get a json file from server that contains the sha1 strings for each file.
    2. Determine changes in the files using the SHA comparison and send the filenames of the changed files back to the server (in one request). The response of that request is a zip that contains those changed files. Is there a way to do this with your lib? this would be awesome!

  6. Pingback: Inno Setup で ネットワークインストーラを作成する方法 | ykyukiのブログ

  7. When I use this plug-in in my Inno script, after the installer is done and every thing shuts down, there is a registry entry created for this plug-in that references “unins000” and as such it shows up as a registered program in the windows “Uninstall or change a program”. When you attempt to uninstall it, you get an uninstall error pointing to “…\unins000.exe”…which doesn’t exist. How can I prevent the plug-in from doing this ?

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s