Каков правильный источник для компонента Windows Common Controls 6.0 (MSCOMCTL.OCX)?

Я экспериментирую с написанием элементов управления ActiveX и замечаю, что я не могу создать элемент управления ActiveX в Visual Basic (6.0), который имеет несколько более сложные элементы управления. Простые элементы управления, такие как метки, кнопки и флажки, работают нормально, но как только я пытаюсь добавить, например, элемент управления дерева в мою форму, элемент управления ActiveX остается полностью пустым, как только я внедряю его в какое-то хост-приложение на другом компьютере. Он отлично работает на моем ящике разработки.

Просматривая список Projects- > Components (Ctrl + T), я нашел две библиотеки, которые, по-видимому, содержат элемент управления деревом:

  • Общие средства управления Microsoft Windows 5.0 (SP2)
  • Общие средства управления Microsoft Windows 6.0 (SP6)

Как только я добавлю какие-либо элементы управления из этих библиотек в мою форму, форма остается полностью серой, когда она встроена на другой компьютер. Другой компьютер - это система Windows XP, поэтому я надеялся, что недостающие распространенные компоненты не будут проблемой, учитывая, как работает старый Visual Basic 6. Разумеется, я установил VB6-распространяемые компоненты, но, к сожалению, это не повлияло.

Кто-нибудь знает, почему мой элемент управления ActiveX останется серым на других компьютерах, но не на моем, как только я добавлю какой-либо элемент управления из перечисленных выше библиотек? FWIW Мне просто нужен древовидный контроль, поэтому, если есть какая-то другая, более подходящая библиотека, доступная мне, это прекрасно.

UPDATE: Как оказалось, это помогает загрузить MSCOMCTL.OCX в C:\WINDOWS\SYSTEM32 на другом компьютере, а затем зарегистрировать его через regsvr32 C:\WINDOWS\SYSTEM32\MSCOMCTL.OCX. Однако я не нашел официального источника для этого файла, и запуск регистрации COM вручную кажется мне громоздким. Разве действительно не существует распространяемого мною перераспределяемого?

Ответ 1

Время выполнения VB6 предварительно установлено на XP и выше, но компонент Common Controls, на который вы ссылаетесь, не является.

Попробуйте установить Microsoft Visual Basic 6.0 Общие элементы управления, распространяемые на клиентских машинах или событии, лучше сделайте настройку для вашего приложения.

Edit:

Opps, ссылка предназначена для обновления, которое не устанавливает OCX, если оно еще не присутствует. Единственным распространяемым, который я нахожу, является модуль слияния для установщика Windows.