Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Install external file from subdirectory (relative path) using Inno Setup

I would like to install an external file.

My installer is located in

c:\somedir\setup.exe

And the external file is located in

c:\somedir\download\MyApp.exe

My code to do that is

[Files]
Source:"\download\MyApp.exe"; DestDir: "{app}";Flags: external skipifsourcedoesntexist

For some reason, Inno Setup does not seem to find this file.

Can anybody tell me what I'm doing wrong?

Thank you.

like image 337
Maiken Roskilde Avatar asked Oct 30 '25 12:10

Maiken Roskilde


1 Answers

You have two problems:

  • The path \download\MyApp.exe relative to c:\somedir\ resolves to c:\download\MyApp.exe, as the leading \ goes back to the root folder. You would need to use download\MyApp.exe.

  • The Inno Setup does not resolve external file paths relatively to the installer anyway. You have to use a full path, see the documentation for the Source parameter:

    When the flag external is specified, Source must be the full pathname of an existing file (or wildcard) on the distribution media or the user's system (e.g. "{src}\license.ini").

    You can use the {src} constant to get a full path to the installer folder.


[Files]
Source: "{src}\download\MyApp.exe"; DestDir: "{app}"; \
    Flags: external skipifsourcedoesntexist
like image 119
Martin Prikryl Avatar answered Nov 02 '25 13:11

Martin Prikryl



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!