- Revenera Community
- :
- InstallShield
- :
- InstallShield Knowledge Base
- :
- Windows Installer Error 2715
- Mark as New
- Mark as Read
- Subscribe
- Printer Friendly Page
Windows Installer Error 2715
Windows Installer Error 2715
Summary
Information on windows installer error 2715.Symptoms
At run time, the installation may error out with the following message:
Error 2715: The specified File key [2] not found in the File Table.
[2] is the file key of the file responsible for the error.
Cause
Error 2715 is caused by an invalid file key found in the installation with no reference to the File table. Following are some common causes of this error message:
- The most common cause of this error message is custom actions. When creating a custom action, one of the following can lead to this error message:
- The file being launched by the custom action is also being installed with the installation. If this file is invoked before being installed on the machine, this error can occur.
- The file may have been deleted or updated in the project; however, the custom action may have not been updated to include this information.
- The file being referenced by the custom action may be dynamically included in the project. When it is updated at build time, the file key changes, causing the error message.
- The custom action is being invoked at a time when it is not supposed to because of wrong conditions.
- The file being launched by the custom action is also being installed with the installation. If this file is invoked before being installed on the machine, this error can occur.
- If the Component table contains reference to a file that does not exist in the project, this error may occur.
- If two components in a project have the same name, one of them is not be built into the Components table. This causes the Component_ key in the File table to reference a nonexistent component.
When the InstallValidate action runs, it does not find the component referenced in the File table, thus file cost validation fails.
Resolution
Express Users
- Delete the file causing the error from your project and re-insert it, rebuild the release to see if the issue is fixed.
- Make sure that the File Name attribute of the custom action does not use [SUPPORTDIR] to point to a file to be launched. The [SUPPORTDIR] variable can only be used in the Command Line attribute of the custom action. Delete the custom action and recreate it.
- If the issue continues to persist, it is possible that the file key may have been left in the project, causing the error. If this is the case, use the following procedure to open the project file (.ism file) in ORCA and clean it to fix the issue.
Note: Make sure to create a backup copy of the .ism file before editing it in ORCA in case it becomes corrupted.
- Follow steps in Knowledge Base article What Is ORCA and How Can I Acquire It? to download and install ORCA on your development machine.
- Open your .ism file in ORCA.
- Select Edit > Find.
- In the Find what field, type the name of the file key specified by error 2715.
- Delete every instance of the file key from the project file.
- Save your project and rebuild the release.
- Follow steps in Knowledge Base article What Is ORCA and How Can I Acquire It? to download and install ORCA on your development machine.
Developer and later
- If the error occurs with a file being installed with the product, make sure that the custom action is invoked after the file is properly installed on the machine. The recommended place to invoke this custom action is after the InstallFinalize action in the Execute Sequence. You can do this by going to Sequences > Installation > Execute Sequence.
- When files are updated on the development machine, their file keys change or get updated in the project. Make sure that the file's key is specified properly in the Custom Actions view. Follow these step to accomplish this:
- In the Custom Actions view, delete the custom action causing the error.
- Right click the Custom Actions node and select Custom Action Wizard.
- Create a New custom action using the Custom Action wizard.
- In the Custom Actions view, delete the custom action causing the error.
- If you reference a dynamically linked file in your Custom Action via its key path, you may run into this issue because the file key may change during build time. Thus, it is recommended that users insert files statically into the project before referencing them in a custom action.
- Delete the file that is being launched by the error-causing custom action from the project.
- In the Setup Design view, click in the Files view of any component.
- Right click on the frame in the right-hand side of the window and select Add.
- Locate the file and click Open. This inserts the file statically in your project.
- Delete the custom action causing the error and recreate it.
- Delete the file that is being launched by the error-causing custom action from the project.
- If a custom action does not have the proper conditions specified, it may throw this error message. For instance, a custom action referencing an installed file may fail during uninstall time. Make sure that the custom action has the proper conditions so that it is not launched during uninstall time when the file may not be present. Typically, the condition used for this scenario is Not Installed. For more information on creating proper conditions, refer to the Additional Information section of this article.
- If the error continues to occur despite the above, delete all instances of the file key in the Direct Editor:
- Open the Direct Editor view.
- Select Edit > Find.
- In the Find what field, type the name of the file key specified by error 2715.
- Delete every instance of the file key and its related records from the project file.
- Build your release and run the installation.
Note: The above workaround is to help clean the project in case the file key value may have been left behind in the project due to some internal corruption.
- Open the Direct Editor view.
- Make sure that all components have unique names, then rebuild.
Additional Information
To create proper conditional statements, refer to the Windows Installer Help Library topics Conditional Statement Syntax and Using Properties in Conditional Statements.
InstallShield prevents you from creating components with non-unique names. However, this article has been made available for the rare cases in which this protective measure has somehow been overcome.
For more information on the Component table, see Windows Installer Help Library topic Component Table.
For more information on this issue, refer to Windows Installer Help Library topics Custom Actions.
It's interesting but does not apply directly to my problem. I'll update the ticket with details.