Sobhan Bose
Sobhan Bose

Reputation: 134

Inno Setup giving error "No files found matching" when including an empty folder to installation

I have been trying to make an installer file with Inno Setup, but I am running into some error.

Following is the snippet of code where I encounter the error:

[Files]
Source: "E:\Programs\Kiara Project\Kiara Project\EXE\exe.win-amd64-3.8\Kiara.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "E:\Programs\Kiara Project\Kiara Project\EXE\exe.win-amd64-3.8\Intro_Images\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "E:\Programs\Kiara Project\Kiara Project\EXE\exe.win-amd64-3.8\lib\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "E:\Programs\Kiara Project\Kiara Project\EXE\exe.win-amd64-3.8\Notes\*"; DestDir: "{app}"; Flags: ignoreversion
Source: "E:\Programs\Kiara Project\Kiara Project\EXE\exe.win-amd64-3.8\Screens\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "E:\Programs\Kiara Project\Kiara Project\EXE\exe.win-amd64-3.8\Screenshots\*"; DestDir: "{app}"; Flags: ignoreversion
Source: "E:\Programs\Kiara Project\Kiara Project\EXE\exe.win-amd64-3.8\System_Files\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "E:\Programs\Kiara Project\Kiara Project\EXE\exe.win-amd64-3.8\python38.dll"; DestDir: "{app}"; Flags: ignoreversion

I am getting this error:

No files found matching "E:\Programs\Kiara Project\Kiara Project\EXE\exe.win-amd64-3.8\Notes*"

enter image description here

If it helps, Notes is an empty folder which I have to include.

Can someone please help me with this?

Upvotes: 2

Views: 880

Answers (1)

Martin Prikryl
Martin Prikryl

Reputation: 202197

You cannot (ab)use [Files] section entry to create an empty directory. The [Files] section is for files, not folders.

Use [Dirs] section to create a folder.

[Dirs]
Name: "{app}\Notes"

Additionally, if you want to install files into a subfolder, you have to make that subfolder the destination path:

[Files]
Source: "E:\Programs\Kiara Project\Kiara Project\EXE\exe.win-amd64-3.8\Intro_Images\*"; \
    DestDir: "{app}\Intro_Images"; Flags: ignoreversion recursesubdirs createallsubdirs

Alternatively, include whole root folder of your project and use Excludes parameter to exclude the files you do not won't to include.

[Files]
Source: "E:\Programs\Kiara Project\Kiara Project\EXE\exe.win-amd64-3.8\*"; \
    DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; \
    Excludes: "do_not_include_this\*"

Though this might be a fragile approach.

Upvotes: 2

Related Questions