Summary
The articles outlines the limitations of using Dynamic File LinksSynopsis
If you want to add the contents of an entire directory to your project, you can do so through the use of dynamic file linking. When you select a source folder for dynamic linking, InstallShield adds the files within that folder to your release at build time. InstallShield scans the source folder before every build and automatically incorporates any new or changed files into your release. Dynamic file linking is useful when the list of files in a folder?and possibly the list of files in its subfolders?might change between builds.Dynamic file linking should be used with caution. If you inadvertently delete a dynamically linked file from the source folder that your dynamic link references, that file is not included in your release the next time you build it, and InstallShield does not display any build warning or error. Your product may install without any issues, but it may not work as expected, since the dynamically linked file that was inadvertently deleted is no longer being installed. Therefore, it is recommended that you avoid using dynamic file links for critical executable files?such as .exe, .dll, or .ocx files?especially if your product requires them in order to run successfully.
Whenever possible, it is better to use the best practice method, instead of the by-directory method, for creating components for dynamically linked files. Note that with both methods, however, a minor upgrade, a small update, or a patch may not install correctly if a file that was present in a target image is removed from the dynamic link for the upgrade or patch.
Discussion
Limitations for Windows Installer?Based Projects
Note the following limitations if you are considering dynamic file linking in Basic MSI, DIM, InstallScript MSI, and Merge Module projects:
- You cannot create custom actions to a dynamically linked file.
- You cannot associate a file extension with a dynamically linked file.
- You cannot extract COM information from a dynamically linked file.
- You cannot set any properties such as Shared, Permanent, or Never Overwrite for a dynamically linked file.
- You cannot use the .NET installer class functionality for a dynamically linked file.
- You cannot specify that COM interop should be enabled for a dynamically linked file.
- You cannot change default file settings (such as Read-Only or Hidden).
- You cannot set file permissions for a dynamically linked file.
- You cannot create shortcuts to a dynamically linked file.
- You cannot perform a static or dynamic scan of a dynamically linked file.
- For Basic MSI Projects: You cannot launch a dynamically linked file from the SetupCompleteSuccess end-user dialog.
When you add files to your project through dynamic links, the files are not physically added to the project. This means that these files do not have any FileKeys that can be associated with custom actions, file extensions, etc.
Limitations for InstallScript?Based Projects
For InstallScript and InstallScript Object projects, a single component cannot contain both static files and dynamically linked files.
Additional Information
For more information on creating Dynamic File Links, see the InstallShield Help Library topic Dynamic File LinkingRelated Articles
Dynamic File Linking and the Always Overwrite file functionality 4Number of Views Dynamic File Linking Duplicate - Are They OK? 3Number of Views Empty Folders Not Created Using Dynamic File Linking 13Number of Views Limitation of the Execute Target File Action 7Number of Views dynamic link library (DLL) 5Number of Views
Hi, I am Reva - Ask me anything.
No new updates
Thanks for the feedback!
Your feedback has been saved.Rate this response:
Add Additional feedback ( Optional )
Are you sure you want to cancel
the case creation?
Are you sure you want to cancel the case creation?
Are you sure you want to close this case
| Products | Region | Phone Numbers |
|---|---|---|
| FlexNet Operations FlexNet Embedded FlexNet Publisher FlexNet Connect FlexNet Code Insight InstallAnywhere InstallShield |
North America * |
+1 630-332-2513 (toll) +1 877-279-2853 (toll-free in North America) |
| Europe * |
+44 1925 944367 (toll) +44 800 047 8642 (toll-free in Europe) |
|
| Japan * | +81 3-4540-5335 (select option 2) | |
| Australia * |
+61 3 9895 2177 +61 1800 560 603 (toll-free in Australia) |
|
|
Usage Intelligence (formerly
Revulytics) Compliance Intelligence |
Please use the Case Portal to submit your support ticket or reach out to your Revenera contact. | |
Case id: 00001065
Activity: Status change: 2 hours ago