View Full Version : Unable to find key file component in dynamic linking

09-14-2009, 04:31 PM
I have an installer created using Dynamic Linking. When I am trying to create a patch with a later version, it gives me the following error "error Val0004: The file '_CBFA5EF4F65048A2A410D3CB24D934B9' in component '_EBCD693E56F39F0320ED64F239C2AA10' is different from the file in the previous package, but the key file for this component did not change. As a result, the changed file will not get installed in an upgrade scenario."

However I am not able to find the component '_EBCD693E56F39F0320ED64F239C2AA10' nor the file '_CBFA5EF4F65048A2A410D3CB24D934B9' in the msi. I tried searching the Direct Editor but no luck. Where can I find the component referred by '_EBCD693E56F39F0320ED64F239C2AA10'?

Even with the error the patch is working just fine. So where is the error coming from?

09-15-2009, 08:34 AM
You might want to take the time to read the help and search these forums for more detailed information on dynamic file linking, if you haven't already. When you set up a dynamic file link, InstallShield generates a GUID for each component for the component table. Thus, you won't be able to find the GUIDs in your project, but should be able to find them in the compiled MSI file.

In short, if you are creating an upgrade, you need to optimize it in the release wizard so that InstallShield can try to use the same generated GUID for each file/component. If your dynamic link contains subdirectories, IS cannot match the GUIDs, and you could have trouble trying to patch.

09-15-2009, 03:13 PM
I did indeed find the said component '_EBCD693E56F39F0320ED64F239C2AA10 in the msi (thanks a lot), however i could not find the file '_CBFA5EF4F65048A2A410D3CB24D934B9'.

Could the patch validation give an error about a file which was never a part of the final msi (earlier msi), but could have been a part of the msi sometime in the past?

09-16-2009, 08:28 AM
In InstallShield 2009 and earlier, Val0004 errors were often erroneously reported. InstallShield 2010 has eliminated the cause of these erroneous errors. (The revised Val004 error and message are described in the following InstallShield 2010 help topic: Val0004 (http://helpnet.acresso.com/Robo/BIN/Robo.dll?tpc=/robo/projects/installshield16helplib/Val0004.htm).)

So, if the patch is working fine, you should be able to safely ignore this error.

I hope that helps.

09-16-2009, 09:45 AM
Thanks Debbie.