Limitations of Dynamic File Linking
InstallShield 2016 Express Edition
Important • 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 dynamic file links. Note that with both methods, however, a patch may not install correctly if a file that was present in a target image is removed from the dynamic link for the patch.
Note the following limitations if you are considering dynamic file linking in a project:
|
•
|
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. |
|
•
|
You cannot launch a dynamically linked file from the Setup Complete Success end-user dialog. |
Any file that you add directly (not through dynamic linking) to your project has an internal name (FileKey). When you create a custom action, a file extension, shortcut, or other type of item, it actually points to this internal name.
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.
See Also
Dynamic File Linking
Determining the Appropriate Component Creation Method for Dynamically Linked Files
Adding Files Dynamically
Files View
Open topic with navigation