Tuesday, July 11, 2006

Where is COMCTL32.OCX?

Yesterday and today, I spent a lot of my time convincing someone that it wasn't my fault that Windows XP doesn't have Comctl32.ocx installed.

Comctl32.ocx is an ActiveX library that contains Microsoft Common Controls - in other words, the objects that lets programs display controls like treeviews, listviews, etc. It was included with versions of Visual Basic prior to version 6. Version 6 and later use a different file, and in Windows XP the functioanlity of this file is included in Comctl.dll, which is installed in the system.

Anyway, this person (a nice person, by the way) is an engineer that creates application packages for a particular business unit for one of my clients. They got a complaint that one of their installation packages didn't work on the latest image because Comctrl32.ocx was missing. The conversation, in email, went like this:
  • She: Your latest image doesn't have Comctl32.ocx.
  • Me (after checking): The old one didn't, either. I think you need to add it to your package.
  • She: Well, how did it get on the image, then? I didn't install anything on the image before I captured the installation.
  • Me (after a lot of investigation): I don't know. I tested every standard program we install, and none of them install that file. The only thing I found that installed it is this package management utility.
  • She: Oh, well, I did install that.
Honestly, I wasn't upset. I was glad that I was able to convey the idea "this isn't my problem" without ticking off anyone, since the engineer doesn't even work for the same company I do. It's always a little dicey trying to tell the client that they need to fix their problem.

Someday, I'll post my rant on why I dislike application captures, but this is a good example why.

1 comments:

Kevin said...

There is a site for downloading Missing Ocx files which i highly recommend. You can try that...