Multiple components with multiple destinations

Hello,

I am sorry if this is a basic question, but I am totally new to Paquet Builder.
I would like to create a setup package for 3 distint components. Each of these components have its own folders and files structure and a distinct destination to copy their structure.
What is the best way to achive this? Is it to create 3 different setup packages or can we do that using a single setup package?
Thank you.

For each component, you can configure Paquet Builder to store paths according to a root folder (the source folder for instance):


If you want to copy files to different directories rather than the default destination folder (or subfolders), you can override the destination for these files thanks to File properties:

If you want to do this for all files in a given component, you must select all files and change the custom destination folder as shown above. You can do it once for all files.

Thank you for this information.
One more question: is it possible to ask the user to specify a destination folder for each component or is this global only?
Thanks

Hello,
I did some testing and actually your procedure is apparently not working well. Let me explain.
Here is my source folders/files tree:

I have some files like the following:

  • “FileA” in the “ComponentA” folder

  • “FileA1” in the “FolderA1” folder

  • “FileA2” in the “FolderA2” folder

and the same with folders “Main” and “ComponentB”.

I create 3 components in my project, each linked to the 3 folders Main, ComponentA and ComponentB.
For each component, I set “Store paths relative to the source folder defined in “Global Properties””.
The default destination folder is set to “%MYDOCDIR%\Destinations\Main”
Then, I define a custom destination folder for every files in the ComponentA to “%MYDOCDIR%\Destinations\DestinationA” and “%MYDOCDIR%\Destinations\DestinationB” for every files in the ComponentB.

Here is the result after executing the setup:

All the “*A” files are located in the “DestinationA” folder.
All the “*B” files are located in the “DestinationB” folder.
“FolderA1” is located in “Main” folder instead of “DestinationA” folder and is empty and the same for “FolderA2”, “FolderB1” and “FolderB2”.
Only folder “Main” is OK, with the file “FileM” directly in it and the “FileM1” in subdirectory “FolderM1” and the “FileM2” in subdirectory “FolderM2”, but I haven’t set any custom destination folder for Main Component.

Hope this can help you.
Thank you.
Best regards.

What did you specify for each component in the “Global Properties” tab “Link this component to the following source folder”?
https://www.gdgsoft.info/uploads/default/original/1X/af6bd24a91be028c4a84809af2615929e46b7e7a.png

I checked the checkbox and specified the following:
"…\Sources\ComponentA" folder for ComponentA
"…\Sources\ComponentB" folder for ComponentB
"…\Sources\Main" folder for Main

Could you try with full paths instead?

Sorry but there is a misunderstanding! In Paquet Builder, I’ve specified the full paths, it is just in my post that I’ve truncated the paths.
Could you please try to reproduce this problem, it takes no more than 5 minutes of setup?
Thank you.

Please email us your PBPX project file. We must have the entire project to have a view of all the settings you used.

Hello,

You’ll find attached an archive with all the elements.
Thank you.

Did you send us the archive? We haven’t got the file. If possible, upload it to https://uploadfiles.io/

Yes, but here is another try: https://ufile.io/ky0f6

Hello, were you able to get the files this time?

Yes, we got the files and analyzed them. It appears that custom destinations work fine. The problem is due to the 7-Zip code that restores folders stored in the archive. Since you configured PB to store paths into the 7z SFX archive, they are automatically restored, even if they are then empty (because their files are moved to another folder per the custom destination folder).
We decided to try to remove the code that restores the folders in a next update. Until that, a workaround is to delete these folders with a custom action “Delete a folder” https://www.installpackbuilder.com/help/delete-folder

I am sorry but this is only one of the problems: the second one is that the files structure is not copied to destination. What I would like to have is (for the “A” files):

  • “FileA” in the “DestinationA” folder
  • “FileA1” in the “DestinationA\FolderA1” folder
  • “FileA2” in the “DestinationA\FolderA2” folder

This is not the case since all the files are copied in “DestinationA” folder directly.
So again, custom destinations doesn’t seem to work as expected, and as far as I know, there is no workaround for that.
Thank you.

When you define a custom destination for files, it overrides any other pre-defined destination. PB will not combine the custom destination and the possible subfolder stored in the 7z SFX archive. This is more detailed in the doc: "Where to extract the selected file(s)?"
https://www.installpackbuilder.com/help/files-destination

So, if I understand, for my case, the best way is to make 3 distincts installer packages?

Yes, it would be easier for you to maintain. You could even get a final single package by adding the 2nd and 3rd packages to the first one and launch them sequentially thanks to “Execute a Program file” custom actions. You have detailed steps here: http://www.installpackbuilder.com/run-multiple-exe-files-after-extraction

Thank you for your help, I’ll try to do it like this.
Best regards.