cpatterson
Posts: 11
Joined: Tue Feb 03, 2015 3:23 pm

Including large (45 GB) files

Hi, I am new to Advanced Installer - Enterprise Edition. I need to include three 45 GB files with my installation. It would be acceptable to include those files next to my installation script and then use a command to copy them to the target machine, but I don't want to use that option for the smaller files that also need to be included in the script. Is there a way to include some files in the script, but put other files next to the script? Thanks!
Dan
Posts: 4529
Joined: Wed Apr 24, 2013 3:51 pm

Re: Including large (45 GB) files

Hi Patterson and welcome to Advanced Installer forums,

Maybe you can include in the installation package only the small files and copy the larger files through a custom action in the installation folder chosen by the user during wizard. If you want to create an installation package with resources inside, please note that Windows cannot open an EXE file larger than 4GB.

In order to create the installation package, you can take a look on the Simple article that will guide you step by step through the creation of a simple Advanced Installer project from scratch and building it in order to obtain a MSI package.

To copy the larger files in the installation folder, you can use a bat file. To integrate the bat file custom action with the installer, please take a look on the How do I launch a CMD or BAT file? article.

Please let me know if that helped, otherwise give me more details about your installation scenario.

Best regards,
Dan
Dan Ghiorghita - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
cpatterson
Posts: 11
Joined: Tue Feb 03, 2015 3:23 pm

Re: Including large (45 GB) files

Dan, thanks for the reply! I think launching a batch file to perform the copy is a good idea for my case.

Since my data files are so large, they won't fit on a DVD. So, the installer and the data files will reside on an external hard drive. The article about launching the batch or exe file describes installing the batch file to the target machine and then executing it from there. If I do that, how can I specify (within the batch file or installer) the drive designator of the external drive (where the large data files are located)? Or is it possible to run the batch file on the external drive?

Also, I don't want to give the user the option to choose a drive/folder on the target machine for the large data files because the files will need to be in a specific location, so do I still need the extra dialog with maybe the path displayed but disabled?

Thanks!
Dan
Posts: 4529
Joined: Wed Apr 24, 2013 3:51 pm

Re: Including large (45 GB) files

Hi Patterson,

I reviewed your specific scenario, and I thing the following approach suits best:
How do I install a user specific file?

Should there be any difficulty you encounter implementing something, please do not hesitate to contact me and I will gladly assist.

Best regards,
Dan
Dan Ghiorghita - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
cpatterson
Posts: 11
Joined: Tue Feb 03, 2015 3:23 pm

Re: Including large (45 GB) files

Dan, thanks for the suggestion. This solution works perfectly!

But.... I now have several hundred files that I would like to copy, so I'm wondering if there is a way to include a "folder" name instead of creating a copy operation for each individual file. Is this possible?
Daniel
Posts: 8276
Joined: Mon Apr 02, 2012 1:11 pm
Contact: Website

Re: Including large (45 GB) files

Hello,

Unfortunately, we don't have support to directly use a folder name. However, you can still place all the desired files in a folder next to the setup package (e.g. MSI) and then use wildcards (e.g. *.*) to copy all the files within your "SOURCEDIR\<adjacentFolder>" source folder.

If you have any questions let us know.

All the best,
Daniel
Daniel Radu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
cpatterson
Posts: 11
Joined: Tue Feb 03, 2015 3:23 pm

Re: Including large (45 GB) files

Dan, thanks for the info. I have tried doing what you suggested, but I guess I'm doing something wrong because my folder contents are not copying.

In the "Install Parameters" section, I added a "SOURCEDIR" property set equal to C:\, and another property "X_DIR" set to X:\MapData (representing a drive and folder on the target machine).

I created a property-based folder in the "Files and Folders" section for the SOURCEDIR, and also created two regular folders under the SOURCEDIR folder to represent two of the folders that I have next to my .msi. I also created a property-based folder for "X_DIR".

Within the X_DIR, I created three File Copy Operations: (1) one small file that is next to the msi, (2) one small file that is in a folder next to the msi, and (3) all files (*.*) that are in a folder next to the msi. I built the msi and installed it on the target machine. The only copy operation that was successful was the one file (1) that was next to the msi. Neither the folders nor their files were copied.

I noticed in the application directory on the target machine, there was a folder called SOURCEDIR and it contained my two subfolders mentioned above in (2) and (3). Those subfolders were empty, though.

Is there anything obvious that I have done incorrectly?

Thanks!
Last edited by cpatterson on Wed Feb 18, 2015 10:38 pm, edited 1 time in total.
Daniel
Posts: 8276
Joined: Mon Apr 02, 2012 1:11 pm
Contact: Website

Re: Including large (45 GB) files

Hello,

In order to have a clear view of your project settings can you please send us the .AIP (project file) and a verbose log of the installation to support at advancedinstaller dot com so we can investigate them?

If you cannot disclose the original project, then you can try to isolate the behavior in a dummy project and send it us so we can investigate.

All the best,
Daniel
Daniel Radu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
Daniel
Posts: 8276
Joined: Mon Apr 02, 2012 1:11 pm
Contact: Website

Re: Including large (45 GB) files

Hello Candace,

I've tested and replicated the behavior. This happens because your subfolders (under SOURCEDIR) has as identifiers private properties. Therefore, on "Install Execution Stage" their value will be reset. In order to avoid this behavior you should delete the existing subfolders and create two new ones using public properties (written only with upper case) for their identifiers. Just delete the existing two subfloders, then create two new ones, go to "Properties" context menu option and in the "Identifier" field set public properties.

Then, recreate your file copy operations and rebuild the project. I've edited your sent project accordingly so it can implement the desired scenario and sent it by email.

All the best,
Daniel
Daniel Radu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
cpatterson
Posts: 11
Joined: Tue Feb 03, 2015 3:23 pm

Re: Including large (45 GB) files

Daniel, thanks for your help! I made the suggested modifications to my aip, and the copy operation for the files worked. However, the folders are not being created on the target machine. All the files from those two folders are being copied to the top level directory on the target machine, but the actual folders aren't being created. In the "Properties" of the two folders in "Files and Folders," the "Create folder on target machine" checkbox is selected but disabled. Is there something additional I need to do to create the folders?

Also, I have several levels of subfolders within those two folders. Once I am successful in getting the two original folders created, will all of those subfolders and files also be copied and created?

Thanks!
Daniel
Posts: 8276
Joined: Mon Apr 02, 2012 1:11 pm
Contact: Website

Re: Including large (45 GB) files

Hello Candace,
Daniel, thanks for your help! I made the suggested modifications to my aip, and the copy operation for the files worked. However, the folders are not being created on the target machine. All the files from those two folders are being copied to the top level directory on the target machine, but the actual folders aren't being created. In the "Properties" of the two folders in "Files and Folders," the "Create folder on target machine" checkbox is selected but disabled. Is there something additional I need to do to create the folders?
Please note this is the normal behavior. The files will be copied exactly under the folders specified in "Destination File -> Folder" field. Therefore, to achieve what you need you should also create the desired hierarchy of folders under your root destination folder (i.e. X_DIR). I've modified and sent you by email a new version of a sample project which implements a similar scenario.
Also, I have several levels of subfolders within those two folders. Once I am successful in getting the two original folders created, will all of those subfolders and files also be copied and created?
No, I'm afraid you should manually create in "Files and Folders" page all of your destination folder hierarchy. Our copy files operation support cannot copy and create subfolders under the destination folder. It only copies the selected files directly under the directory specified in "Destination File -> Folder" field.

All the best,
Daniel
Daniel Radu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
cpatterson
Posts: 11
Joined: Tue Feb 03, 2015 3:23 pm

Re: Including large (45 GB) files

Daniel, thanks for your help!

I have over one hundred folders within folders that will need to be created, so I'm thinking your first suggestion of using a batch file to copy the folders and files next to my msi is the best option. Is there a way to invoke the batch file and know the drive letter of my external drive (that contains the msi and files)?
Daniel
Posts: 8276
Joined: Mon Apr 02, 2012 1:11 pm
Contact: Website

Re: Including large (45 GB) files

Hello Candace,

The path of the MSI package (at install time) it is saved in the "SOURCEDIR" property. So, you can pass the [SOURCEDIR] property formatted reference to your BAT file when launching it through a "Launch file" custom action.

You can find an example of a "Launch file" custom action which launch a BAT file and pass some parameters to the BAT in steps 3 and 4 from our "Create MSI wrapper over EXE installers" article.

Let us know if this helped.

All the best,
Daniel
Daniel Radu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube

Return to “Building Installers”