Fog Creek Software
Discussion Board

Knowledge Base
Terry's Tips
Darren's Tips

Office HTML edit control install on first use

I have Office SR-1 Pro installed, and I noticed that something happens in CityDesk which happens in the software I'm working on at my job.  The first time a DHTML edit control is instantiated the Office installer asks for a CD to install the control.

In CD, this happens the first time I read an article.

This occurs (I believe) because the control is installed as "Install on First Use."  To verify this, go to Add/Remove Programs, find Microsoft Office SR-1 Professional, and click "Change".  Then "Add or Remove Features" and open the Office Tools tree.  Under that you will find "HTML Source Editing."  When installing Office, the default for this is "Install on 1st Use."  When this is set for first-use install, you get the messages I've been seeing.  If you change this to "Not Available" or "Run From My Computer" then the message does not appear.

My guess is that the newest version of this control is implemented with a stub that loads the installer if the rest of the control is not installed.  The funny thing is that the control works if you then cancel the installation -- perhaps it uses an older version of the control.  I wonder if there is a way to specifically launch that older verson and skip the installation prompt?  If you find a way, I would be delighted to know how you did it.

Please contact me if you need more info.

Chris Farmer
Tuesday, November 13, 2001

Your thoughts on the stub are the same as ours.. but as you said, if you cancel it works.  So I think its more of a registry hack...

I think it all is related to the windows installer and some registry hacks that they've introduced.  If you look up a controls CLSID, sometimes there is a value named "InProcServer32" with some gobbedly gook token information.  In that case, even if the Default value is set to the correct path of a valid ocx, windows will still yield to the installer.  (This may or may not be going on with the Office installer, but it definitely happens with the windows installer and I'm almost positive they are very similar)

One fix is to find the CLSID of the DHTMLED.OCX, look it up in the registry and delete the InProcServer32 value (not the key, but just the value under the InProcServer32 key).

Michael Pryor
Tuesday, November 13, 2001

What sort of gobbledy-gook token information are you seeing exactly?

Chris Farmer
Tuesday, November 13, 2001

Well I'm not seeing this problem because I always tell that pesky Office installer to install everything instead of trying to be "oh-so-smart" and prompt you for the install disk every few weeks.

But it's similar to another bug where the windows installer refuses to let you register a newer version of an ocx.  When you install the ocx and register it, the default value of the InprocServer32 key gets set to the path of the OCX.  But the windows installer adds a InprocServer32 value under the InprocServer32 key and writes a data token which isn't readable (its data so it looks like '$&%h3213jsdf' - and maybe there is a path in there somewhere).  Anyway, if you delete this token (value) then you can register the newer version of the OCX, otherwise it will always use the older OCX.  Its very similar behaviour to what you are seeing...

Michael Pryor
Tuesday, November 13, 2001

I saw the same behavior as Chris described (same setup as well, Office 2000 SR-1). Since I had originally installed Office from a network share location, the installer just ran without intervention, so it was no big deal. However, I was a little perplexed as to what was just installed because there was no indication. (No mention of what exactly was installed.)

This might be concerning and/or confusing for users who install it and might not have their Office 2000 CD handy. It's probably not obvious to people that it's okay to cancel this request. They'll probably pursue their Office CD to satisfy the install request.

Brian Cantoni
Thursday, November 15, 2001

I think I've tracked down this problem. CityDesk installs a version of a file called DHTMLED.OCX which is slightly older than the version installed by Microsoft Office. What you're seeing is the Microsoft Office autorepair program trying to fix it.

If you are still having this problem please try this and let me know if it fixes it:

* Look in c:\winnt\system32\dllcache for a file called
dhtmled.ocx. Select it and press Alt+Enter, then check the version number.

* Look in c:\winnt\system32 for a file with the same
name, dhtmled.ocx. Check the version number on that.

* If you have a higher version number in the dllcache subdirectory,  copy that over the older one in c:\winnt\system32.

This should make the office installer prompt go away.

Joel Spolsky
Monday, November 19, 2001

*  Recent Topics

*  Fog Creek Home