Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Problem Registering an ActiveX .exe


1 reply to this topic

Superfreak3

Superfreak3
  • Full Members
  • 437 posts

Posted 21 May 2004 - 19:40

Previously, we were regestering our ActiveX .exe by simply calling it in a CA (.exe installed with product) with a command line of /RegServer. This seemed to work OK for a while.

We've recently switched to using Developer8 from ISWI 2.03 and I don't know if this is handled differently in the new environment or not.

I've attached some screen shots of what is happening. When this functioned properly we were only getting HKLM\Software\Classes\CLSID\{ID Code###}\LocalServer32 registry entry. Now we are getting the ImprocServer32 entry as well, which seems to be tripping this up. You'll see from the shots what we are getting now. I simply delete the ImprocServer32 key and the application works fine without re-registering.

I've tried unregistering the .exe at the front end of our install, the registration CA described above without the /RegServer arguement, and I've also tried this without the custom actions but set to Self-Register, but the ImprocServer32 key is always blocking our progress.

Is there any way of preventing this key from being built? Is there some setting on the component I'm missing or is this directly related to our migration to Developer8?

Any help would be greatly appreciated.

Thanks!

Attached Images

  • Registry.gif


Glytzhkof

Glytzhkof
  • Moderators
  • 1,447 posts

Posted 22 May 2004 - 04:55

Windows installer guidelines say that you should really exctract the COM information from these components rather than self-register them. You might try to enable the "COM Extract at build" for the component and remove the self-registration custom action. There is a good chance this will work correctly. The added bonus is that you are following the windows installer guidelines (adds a number of benefits).

Windows installer cannot self-register an EXE file, but it can self-register a DLL. However, there are some special Installshield tables called something like ISSelfRegister. This is a table where you can add components that need to be registered and specify a registration order. It is also capable of registering an EXE and defaults to a /RegServer command line. This is the second option for you I believe after trying the COM Extract.

Finally, it is possible that since you have upgraded the project from an earlier version that Installshield has really enabled the COM extract and is now doing both this and self-registration. I would have a look at the comonents in question to see what they are really doing. And I would also have a look at the different tables in the Direct Editor.
Regards
-Stein Åsmul