- Revenera Community
- :
- InstallShield
- :
- InstallShield Knowledge Base
- :
- Limitations of Dynamic File Linking
- Mark as New
- Mark as Read
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
Limitations of Dynamic File Linking
Limitations of Dynamic File Linking
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.