PDA

View Full Version : New IKernel Does Not Work



Jim Keifenheim
12-18-2001, 08:48 AM
We created installers using InstallShield Professional 6.30. Up till a week ago they all worked. Then, some of them started to fail with the error: "Component Transfer Error" at the start of the file transfer dialog. I traced it down to the version of IKernel.exe used to build the installs. InstallShield Professional 6.30 comes with IKernel.exe version 6,30,100,1255 which works fine. Somehow our build machine got IKernel.exe version 6,31,100,1190 which does not work and fails with the error shown above. I replaced all our InstallShield Professional 6.30 with IKernel.exe version 6,30,100,1255 and all installs work fine now.

The question is: are IKernel.exe versions upward compatable? If not, when our customers PC gets this new version from third party installs, out installs will fail.

What is the process IKernel follows? Is it:

1. Installer installs IKernel.exe on PC that does not have one.
2. If installer has newer version of IKernel.exe it updates the one on the PC
3. The installer uses the IKernel.exe on the PC to do the install.

Is this how it works?

Thanks;

Jim

tw0001
12-18-2001, 07:56 PM
Welcome to DLL Hell. This is the main reason Installshield 6.x is "dangerous" to use - any future ikernel.exe can come along and break YOUR app's install.

Note Installshield 7 has the same problem with idriver.exe (a renamed ikernel.exe that uses MSI)

To answer your question, yes, ikernel.exe is supposed to be upward compatible, they take great effort to make sure it is, but as you are seeing, they can't always guarantee it. The only solution in your case is to have the user delete the
\Program Files\Common Files\Installshield\Engine\6 folder before running your setup.

Also you might want to try building your install with 6.31 (IDE) and 6.31 engine to see if it fixes the problem.

Ted.