Mscomctl32.ocx ActiveX Control

Phenomenally useful. Not supported at 64bit.

Location

Normally:  C:\Windows\SysWOW64.

Versions

I’m using version 6.01.9846 of 9/12/2015

Registering

  • C:\Windows\system32>Regsvr32  c:\windows\syswow64\mscomctl.ocx
  • Unregister C:\Windows\system32>Regsvr32 /u  c:\windows\syswow64\mscomctl.ocx

Troubleshooting

First check References.  If it shows as MISSING, untick it and close the References dialog box.  Compile the code (which will fail, naturally), then re-add the reference.

Problem Library is  correctly (Re)Registered but you get The Expression MouseDown you entered …  error.  Or there is a The OLE server may not be registered error when double-clicking a control in design view:

The operation on the ListViewCtrl object failed.  The OLE server may not be registered.  To register the OLE server, reinstall it.

The OLE server may not be registered

Solution:  open the reference dialog and increase the Priority of the Microsoft Windows Common Controls 6.0 (SP6) entry  as far as it will go (it won’t go higher than the Access Object Library reference). This has immediate effect.