/build/static/layout/Breadcrumb_cap_w.png

Can not find InstallDriver in ROT table

Hi,
I am trying to transform a vendor Install Shield MSI extracted from a setup.exe. The vendor supplied ISScript 10.

The application installs fine from the main Setup.exe, but when I attempt to install the product from its extracted package I get the error show at http://consumer.installshield.com/kb.asp?id=Q110641. My [partial] log is as follows:

Action start 16:15:44: ISStartup.
MSI (s) (B8:D0) [16:15:44:106]: Generating random cookie.
MSI (s) (B8:D0) [16:15:44:153]: Created Custom Action Server with PID 3552 (0xDE0).
MSI (s) (B8:E8) [16:15:44:262]: Running as a service.
MSI (s) (B8:E8) [16:15:44:278]: Hello, I'm your 32bit Impersonated custom action server.
MSI (s) (B8:54) [16:15:44:278]: Invoking remote custom action. DLL: C:\WINNT\Installer\MSI45.tmp, Entrypoint: StartUp
1: The InstallScript engine version currently installed on this machine is adequate.
1: Event 'E1544793' is created
MSI (s) (B8:28) [16:15:44:793]: PROPERTY CHANGE: Adding ISStartupEvent property. Its value is 'E1544793'.
1: GetInstallDriver, Can not find InstallDriver in ROT table, Return Code = 0x800401e3
1: {4FC5F15C-DDFA-4FAF-8071-BE8D63BCD20C}
1: Extract supporting files
1: Failed to extract IGdi.dll, Ignore it.
MSI (s) (B8:28) [16:15:47:324]: Note: 1: 2732 2: 0
MSI (s) (B8:28) [16:15:47:324]: Note: 1: 2732 2: 0
1: ISMsiServerStartup Failure, Failed to RegisterMsiServer, Error = 0x80004004
1: MsiServerStartup failed. Abort installation.
Action ended 16:16:34: ISMsiServerStartup. Return value 1603.
Action ended 16:16:34: ISStartup. Return value 3.

I have done research in to this and understand that it seems to be a common IS error. I’ve tried different versions of ISScript, changing DCOM launch idents (as suggested at http://itninja.com/question/what-is-pxe?6) and installing the iKernel update – but nothing as worked! You guys are my last hope!

Application: Intergraph SmartPlant P&ID 4.03
Msiexec version: 3.1
Package schema: 200

A transform as been applied adding ISSETUPDRIVEN=1 and removing the OnCheckSilentInstall custom action.

Any thoughts on this issue would be much appreciated.
Cheers!
Charlie

0 Comments   [ + ] Show comments

Answers (22)

Posted by: AngelD 14 years ago
Red Belt
0
Okey, so I'm gonna ask the obvious first:
Did you try to manually:
install ISScript10.msi
Set the DCOM identity to launching user
Install the MSI with the Transform in basic UI
Posted by: fuz_kitten 14 years ago
Second Degree Blue Belt
0
ISScript 10 is installed

I’ve double checked my DCOM Idents and they are all set to ‘The Launching User’, indecently I have several entries for ‘InstalShield InstalDriver’ and only one for ‘InstalShield InstalDriver String Table’. I’m not sure what changing these setting is modifying, I’m just following instructions!

Launching the MSI with the /qb switch, or any other switch, makes no difference…

*sob*
Posted by: AngelD 14 years ago
Red Belt
0
According to the log it seems that the ISScript.MSI failed to install or may not be the correct version.
Posted by: fuz_kitten 14 years ago
Second Degree Blue Belt
0
How do you figure that? I would have you that the line "The InstallScript engine version currently installed on this machine is adequate." would suggest otherwise.

I'll try using a diffrent copy of IScript 10 - thanks for your replys guys!
Posted by: AngelD 14 years ago
Red Belt
0
ORIGINAL: AngelD

According to the log it seems that the ISScript.MSI failed to install or may not be the correct version.

Never mind this, I read the row wrong.
Posted by: jsvenso1 14 years ago
Senior Yellow Belt
0
Hi fuz_kitten

Have you found a solution to your problem ?

I have two diffrent comments that may help you.

1. Open your ISScript.msi and remove the registry value that sets RunAs = Interactive User. Then install your application together with your modified ISScript.msi.
Also make sure that the value doesn't already exists (installed by another ISScript version).

OR

2. Win XP SP2 has introduced a new feature for DCOM-objects that makes it possible for system administrators to control the security on a computer wide level.
Run DCOMCNFG.exe and expand Components Services. Right click My Computer and choose Properties - COM Security. Make sure that Interactive User has been given enough permissions. You might have to add Interactive to the security limits.

Please let me know if this solves your problems.
Posted by: fuz_kitten 14 years ago
Second Degree Blue Belt
0
I’m afraid that that didn’t work.

In the end I just gave up and snapped the thing. The answer to my problem will have to remain a life long mystery - i dont think i'll ever get over it :P

Anyway, thanks for your help guys,
Charlie
Posted by: Ram 12 years ago
Senior Purple Belt
0
hello folks,
its been many months but still i would like to add something to your answers,

1. If it is an Installshield MSI then just conditionalise all the actions not to run that are using ISSetup. Because it is not required.
As a packager we make sure that we dont put a preq that does not relate the application itself.

I had the same problem with one of my application i was packaging and solved it.
Posted by: AngelD 12 years ago
Red Belt
0
1. If it is an Installshield MSI then just conditionalise all the actions not to run that are using ISSetup. Because it is not required.
How would you know that the "ISSetup" related custom actions are not used in some how?
In some case it could work but in most cases the author of the package using InstallShield script based MSI scripted alot of the logic otherwise Windows Installer could handle by default.
Posted by: Lillude 12 years ago
Senior Purple Belt
0
Hi,

I am facing a similar issue with Sonic OpenMG Secure Module.MSI.
I have tried almost every thing (removing the RunAs registry under Appid, DCOM config setting for launching users, installing in interactive cmd) but no luck.


anyone got a solution for this?
Posted by: anonymous_9363 12 years ago
Red Belt
0
Did you change the Launching User configuration for ALL the InstallShield instances? There is a script floating around which walks through all the known IS GUIDs, changing the Launching User for them. Note that it's at least a year old (if not more) so you may need to add the latest ones to it.
Posted by: Lillude 12 years ago
Senior Purple Belt
0
I have changed the RunAs parameter for all the Installshield instances. I have modified the script to get all values under Installshiled APPID\RunAs and delete the registry.

Also this is happening only 1 machine and working fine on 2 other pc. Only difference on the machine where it is not working is that this one has XP Home edition installed.
Is there the limitation in XP Home as such?


thanks
Posted by: anonymous_9363 12 years ago
Red Belt
0
When all else fails, ProcMon will show you EXACTLY what's going on.
Posted by: TheInfamousOne 11 years ago
Purple Belt
0
Hi there, I was having the same problems with the ROT table error. The package I was working is InputAccel 5.3 SP2 and one of the dependencies was ISScript10.msi. The install script worked fine but when my package tried to install it had problems adding a DCOM object while running via SMS.

The work our group uses is to add ISSETUPDRIVEN with a vaule of 1 in the Property Table. This one addition seemed to clear up my troubles with this error.

HTH
Posted by: anonymous_9363 11 years ago
Red Belt
0
I think you were lucky. Maybe the CA in that MSI was conditioned with that property. 99.99% of the time, the ROT issue is due to the Launching User being set incorrectly.
Posted by: TheInfamousOne 11 years ago
Purple Belt
0
You're correct, I'm having a new problem with either SMS and the "System" account trying to install the DCOM object and it might not have rights. Or, as you have printed above.

I got a little farther but it's still reporting the ROT Table error. The installation will hang now.

How do I change the launching user in the object and add it to my package?
Posted by: anonymous_9363 11 years ago
Red Belt
0
How do I change the launching user in the object and add it to my package? It's well documented here on AppDeploy. Search for 'Launching User'. IIRC, there's a script which will loop through all the IS entries up to v10.
Posted by: TheInfamousOne 11 years ago
Purple Belt
0
This is what I did to get around the issue.

I ran the Installshield v.10 first, then I did a setup capture with Wise Studio even though the there was a vendor supplied MSI. This seemed to bypass the "InstallSheild" check and avoided adding the additional garbage.

The only additional problems I ran into was some files were added to the WiseSourcPath tables with an attribute of 8. I changed them all to 16 and then changed the ."NET" association to "NONE" in the Assemblies tab.

Everything installed just fine.

Hope this made sense to anyone looking to repackage "InputAccel".

Thanks,
Posted by: bbozym 11 years ago
Yellow Belt
0
This is utterly ridiculous but the problem can be created by creating a file called 'program' in the root of c: . Will get the error 'Can not find InstallDriver in ROT table' in the log when running any setup.exe, remove the file and the problem goes away.
Posted by: anonymous_9363 11 years ago
Red Belt
0
Alternatively, rather than the ludicrous hoop-jumping you describe, you could actually fix the problem properly by changing the IS driver/engine's COM+ ID from 'Interactive User' to 'Launching User' as detailed at length here on AppDeploy.
Posted by: MsiCreator 11 years ago
Senior Yellow Belt
0
Hi I am also getting the error for my application.Can any one suggest how to overcome on this error.
Error description: "GetInstallDriver, Can not find InstallDriver in ROT table, Return Code = 0x800401e3 "
Tried to changing Dcom identity but no luck.
Posted by: anonymous_9363 11 years ago
Red Belt
0
When you say that you "tried to" change the DCOM identity, do you literally mean that you were unable to change it or that changing it made no difference? If the former, then the account you are using clearly has insufficient privileges for changing the registry value. If the latter, then you are possibly unique in being th eonly person for whom the fix has failed. Alternatively, it could be that you have more than one IS driver/engine installed and have only changed one instance. Search the registry for all occurences of 'Interactive User'. There is a script (I *think* it's on installsite.org) which walks through all IS engine registry entries known at the time of the script's creation and removes the value. You would need to add the latest flavours to it but that's a simple matter.
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.

Don't be a Stranger!

Sign up today to participate, stay informed, earn points and establish a reputation for yourself!

Sign up! or login

Share

 
This website uses cookies. By continuing to use this site and/or clicking the "Accept" button you are providing consent Quest Software and its affiliates do NOT sell the Personal Data you provide to us either when you register on our websites or when you do business with us. For more information about our Privacy Policy and our data protection efforts, please visit GDPR-HQ