VB6 Общие элементы управления в Windows 10

Я недавно установил Windows 10 из Windows 7. Теперь я столкнулся с проблемой, когда Microsoft Common Controlls mscomctl не существует

введите описание изображения здесь

Я зарегистрировал файл "MSCOMCTL.OCX" с помощью sysWow64/Regsvr32.exe

введите описание изображения здесь

Но когда я перезагружаю проект, он все еще не может найти ссылку.

Я также зарегистрировал.ocx с System32. Это проблема Windows 10 или я что-то упустил?

3 ответа

Решение

Ответ состоял в том, что мне нужно было зайти в проект, щелкнуть projoect, а затем компоненты и отметить общие элементы управления Microsoft. Нажал "Применить" и перезапустил проект с сохранением.

Если бы у вас не было реестра, и не завершите его, он отключил бы его, и после того, как вы завершили регистрацию в файле.ocx, вам нужно будет снова включить его.

Наиболее вероятной причиной этой ошибки является то, что ваш проект ищет более новую версию MSCOMCTL.OCX, чем установлена ​​в Visual Basic 6 (с пакетом обновления 6 для Visual Studio 6).

Вы можете проверить версию библиотеки типов, требуемую вашим проектом, открыв файл проекта.vbp в текстовом редакторе. Посмотрите на строку, как эта:

Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.2#0; MSCOMCTL.OCX

2.2 в середине относится к требуемой версии typelib. Если вы повторно добавите ссылку на компонент, а затем сохраните проект, вы можете вернуться к файлу.VBP и посмотреть, какая версия typelib установлена ​​на вашем компьютере. (Это, вероятно, будет версия 2.0).

Чтобы получить последнюю версию typelib (2.2):

  1. Установите Visual Studio 6 с пакетом обновления 6, если вы этого еще не сделали.
  2. Установите версию накопительного пакета обновления 6 (SP6) для Microsoft Visual Basic 6.0 от января 2016 года.

Это даст вам версию 6.1.98.46 файла MSCOMCTL.OCX.

Пожалуйста, запустите командную строку в режиме администратора и введите следующие команды

для 32-битной машины (регистрация)

cd C:\Windows\System32

regsvr32 mscomctl.ocx

regtlib msdatsrc.tlb

для 64-битной машины (регистрация)

cd C:\Windows\SysWOW64

regsvr32 mscomctl.ocx

regtlib msdatsrc.tlb
Другие вопросы по тегам