Help please with converting MSI IE plugin to INF installer

Discuss & post Update Pack addons here.
Post Reply
User avatar
Mrs Peel
The Dominatrix Recoded
Posts: 1344
Joined: Tue Jan 17, 2006 2:02 am
Location: Aotearoa
Contact:

Help please with converting MSI IE plugin to INF installer

Post by Mrs Peel » Sun Sep 23, 2007 2:52 am

Ay caramba it seems to be my weekend for making regcode intensive addon packs and this I just pulled an all-nighter on and it's still got me totally bamboozled....

I am building an INF installer/uninstaller for a plugin for Internet Explorer who's original source is an MSI installer. I've converted heaps of MSI installers to INF ones before and never had any problems like this before, and it seems to me that the source of my issue can only be in one of two places - a required MSI setting or an IE setting which I've overlooked.

First of all, I can confirm in both a local install and a VM install (using virgin copy of win2k3) that all of my INF stuff is both installing and removing all the exact same reg entries/files as the native MSI installer does - with the exception of any specific MSI related reg code. But after my INF install, when I open up Internet Exporer to activate the browser plugin it does not show up as listed in View\Explorer Bar where it should....

So....

I take a regshot and then run the native MSI installer OVER the top of my already existing INF installation and the ONLY new things that the MSI installer is adding to my registry is the following code sections, after which the browser plugin then becomes visible in View\Explorer Bar where it should. No other settings for internet explorer have changed anywhere, just these new sections are added:

Code: Select all

HKLM\SOFTWARE\Classes\Installer\Features\............
HKLM\SOFTWARE\Classes\Installer\Products\............
HKLM\SOFTWARE\Classes\Installer\UpgradeCodes\..........
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\...........
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\.............
In any other INF installer I have made which is based upon an original MSI installer my application has always worked perfectly OK with the absence of those above sections, which I have always omitted from my INF installers, so I cannot for the life of me figure out why this should be any different. But there three things that I cannot account for, having never built a plugin for Internet Explorer before which are:

1. Is there some particular thing that any of these sections of extra MSI-related code might contain something which somehow "authenticates" the plugin as being "OK for IE to use" - perhaps come kind of security code which makes it "approved" by windoze?

2. Could the problem be somewhere in the realms of the possibility that the plugin will not be authorised to operate unless it can check back to the registry to look for some code which relates to the "repair" feature of the MSI installer - which as far as I can tell is redundant because I've done regshot comparisions of what happens from the native MSI installer when you run "repair" and it does not alter any of the files or reg entries in any way whatsoever.

3. Or could it be nothing to do with the MSI installer at all, and that I have totally overlooked some other change in the registry which is silently modified (rather than added or deleted) to do with activating/displaying IE browser plugins - but it beats me how I could have missed that though, with the number of different ways I have run and compared my reg shots

I'd really appreciate it if anyone here who has had experience making addon (not switchless) installers for IE plugins might be able to shed some light on the subject for me.

Thanks for reading.

User avatar
RogueSpear
Posts: 1155
Joined: Tue Nov 23, 2004 9:50 pm
Location: Buffalo, NY

Post by RogueSpear » Sun Sep 23, 2007 1:40 pm

Could it be that there's a .DLL file that needs to be registered? I would have expected that to appear in your RegShot results, but never the less I'd look into it.

User avatar
ricktendo64
Posts: 3213
Joined: Mon May 22, 2006 12:27 am
Location: Honduras

Post by ricktendo64 » Sun Sep 23, 2007 3:12 pm

MSI installers are the toughest to make into true addons, they have some "Update", "Repair" and "Uninstall" features/reg entries that cause lots of problems if not fully entered.
I made a MSI into a true addon once it caused a "New Hardware Wizard" to launch on 1st login. Since then I quit trying.
I always use svcpack or WPI (if its not svcpack compatible) to install my MSI based installers, its much less trouble.

P.S. I think RegShot might be the problem, it does not catch all the reg entries. Try InstallWatch.

elrico
Posts: 124
Joined: Sun Mar 11, 2007 2:24 pm
Contact:

Post by elrico » Sun Sep 23, 2007 5:37 pm

rictendo64 +1

I spend a week for integrating MSXML 6 in my french Update pack, the only way i find 100% safe is to use the MSI (administrative install).

For MSxml 4 i used a trick, i've done a real addon, and used only the msi from administrative install (much smaller) but this not work on all case (the new sec update for msxml 4 don't work with this trick, but work better with out the MSI.).

I looked at project : MSI to XML but i don't have the time to understand.

I'll survey this thread...

User avatar
Mrs Peel
The Dominatrix Recoded
Posts: 1344
Joined: Tue Jan 17, 2006 2:02 am
Location: Aotearoa
Contact:

Post by Mrs Peel » Sun Sep 23, 2007 10:18 pm

RogueSpear wrote:Could it be that there's a .DLL file that needs to be registered? I would have expected that to appear in your RegShot results, but never the less I'd look into it.
Arrrrrrrrrrrrggggggggggggghhhhhh I need new reading glasses!!!! There was a path error in my RegisterDlls section!!!!!!!!!!!!

Murphy's Law dictates that it's always the most SIMPLE things we overlook :oops:

Thanks guys! Finished product here

:shock:

Post Reply