mscomctl32.ocx, richtx32.ocx ошибка: object library not registered
В новых ОС (Windows 7 x86 (32), Windox 7 x64, Windows 8 x86 (32), Windows 8 x64), иногда, ни с того, ни с сего, среда Visual Studio от Microsoft выдаёт ошибку при попытке использовать Common Controls, RichTextBox и ещё несколько элементов управления. Текст ошибки звучит, как: object library not registered (библиотека не зарегистрирована). При попытке зарегистрировать её через regsvr32 - ничего не меняется, всё успешно регистрируется, но ошибка остаётся.
Оказывается дело в обновлениях, начиная с Internet Explorer 10. Они сбивают своей паранойей по безопасности, регистрацию этих библиотек в системе. Всё лечится очень просто:
Windows x86 (32)
Для 32-разрядных систем, берём файл отсюда C:/Windows/Microsoft.NET/Frameworkv4.0.30319/regtlibv12.exe и копируем его в папку C:/Windows/System32.
Теперь регистрируем сбойный файл, запустив в любой командной строке: C:/Windows/System32/regtlibv12 C:/Windows/System32/msdatsrc.tlb
Windows x64
Для 64-разрядных систем все файлы уже есть в системной папке, она другая, поэтому, сразу выполняем в командной строке: C:/Windows/SysWOW64/regtlib C:/Windows/SysWOW64/msdatsrc.tlb
Всё! Теперь все проекты VB6 снова работают и все контролы снова доступны!