Подтвердить что ты не робот

Visual Studio 6 Windows Common Controls 6.0 (sp6) Windows 7, 64 бит

Мне предложили помочь работать с устаревшим приложением vb6 для кого-то, поэтому я решил бросить Visual Studio 6 на свой ноутбук под управлением Windows 7 x64 после это руководство.

Он установлен отлично, и я вижу, что все работает, кроме Microsoft Windows Common Controls 6.0 (sp6). Microsoft Windows Common Controls-2 6.0 (sp6), Microsoft Windows Common Controls 5.0 (sp2) и т.д. Все работает нормально. Однако, когда я пытаюсь добавить компонент Microsoft Windows Common Controls 6.0 (sp6), я получаю сообщение об ошибке:

'' could not be loaded

Я не мог добавить изображение, поэтому я загрузил снимок экрана для всех, кто хочет его увидеть точно:

http://i.imgur.com/7aym4xB.png

Я пробовал регистрировать/не регистрировать/перерегистрировать MXCOMCTL.OCX, MSCOMCT2.OCX, msdatsrc.tlb без всяких успехов. Я также удалил известное обновление для системы безопасности, которое может вызвать проблемы с Windows Common Controls. Я удалил IE11, хотя состояние отчетов IE11 не вызовет проблем с MSCOMCTL.OCX, как это сделал IE10.

Я запускаю VB6.EXE в режиме совместимости Windows XP SP3. С помощью Отключить визуальные темы, Отключить композицию рабочего стола и Отключить масштабирование дисплея при высоких настройках DPI. Также запустите его как администратор.

Я также попытался открыть предыдущий проект, который использует этот элемент управления, и он терпит неудачу во время загрузки с той же "пустой" ошибкой, что и на скриншоте с приведенным ниже в журнале ошибок:

Строка 35: Класс MSComctlLib.ListView управления lvData не был загруженным классом управления. Строка 223: класс MSComctlLib.StatusBar управления Stat не был загруженным классом управления.

Итак, это говорит о том, что это не проблема с версией в .vbp, как некоторые предлагают (как это происходит и с новыми пустыми проектами).

Я нахожусь в конце. По-видимому, люди получили как VB6, так и Windows 7 x64 для правильной работы (с помощью Windows Common Controls), но НИЧЕГО Я не пытался решить мою проблему. Я надеюсь, что кто-то здесь может столкнуться с этим, или у вас есть идеи относительно того, что происходит.

4b9b3361

Ответ 1

В ожидании ответа на идеи здесь я решил попробовать что-то. Я запустил regedit как администратор, перешел к ключу HKEY_CLASSES_ROOT\TypeLib, а затем выполнил поиск по "MSCOMCTL.OCX"... Я удалил ключ EVERY, который ссылался на этот файл .ocx.

После поиска всего реестра, удалив найденное, я запустил командную строку в качестве администратора. Затем я перешел к C:\Windows\SysWOW64 и набрал следующие команды:

regsvr32 MSCOMCTL.OCX
regtlib msdatsrc.tlb

После регистрации этих двух файлов снова все работает! Я прочесывал веб-сайт, чтобы ЧАСЫ искали это решение безрезультатно. Это так случилось, я исправил его сам после публикации вопроса здесь:( Даже если Visual Studio 6 устарел, надеюсь, это может помочь другим!

Ответ 2

Реализация двух директив, которые уже работали для меня из "C:\Windows\SysWOW64"

regsvr32 MSCOMCTL.OCX
regtlib msdatsrc.tlb

Стоит отметить, что поле DOS должно находиться в режиме администратора. До этого у меня были ошибки в вене. Класс MSComctlLib.TreeView управления tvTreeView не был загруженным классом управления "и" Класс MSComctlLib.ListView управления lvListView не был загруженным классом управления ".

Я также использую Visual Studio 6 на 64-битной Windows 7 с обновлениями SP6. Из-за той же проблемы меня остановили. В моем случае мне не нужно было проходить через реестр.

Ответ 3

У меня была такая же проблема с загрузкой моего проекта VB 6. Вот пример сообщения об ошибке: "Класс MSComctlLib.ProgressBar управления prgExecution не был загруженным классом управления".

Эта проблема была решена некоторыми Microsoft Magic следующим образом: я открыл окно "Компоненты проекта" в моем сломанном проекте. Я нажал кнопку Обзор и нашел файл MsComctl.ocx. Я нажал ОК. Затем VB 6 застрял (приложение не реагирует). Через некоторое время я закончил приложение VB 6, используя диспетчер задач.

Затем, по волшебству, когда я открыл свой проект VB 6, чтобы показать своему другу-программисту, что такое POS-проект, все элементы управления были возвращены, как и ожидалось. Так или иначе, что-то было зарегистрировано или исправлено.

Ответ 4

Только сегодня у меня было (сомнительное) удовольствие получить код VB6, запущенный на Windows/64 Bit. Я столкнулся с этой проблемой, но ни один из предлагаемых решений не работал у меня. Не работали с добавлением ссылок, используя меню "Проект → Ссылки...".

Чтобы запустить его, мне пришлось вручную изменить файл проекта VB6 (*.vbp). Для всех библиотек у меня была проблема с загрузкой, и я должен был использовать следующую нотацию для определения в качестве ссылки: Object = {Ключ реестра} # Версия # 0; LIBRARY.OCX Пример: Объект = {FAEEE763-117E-101B-8933-08002B2F4F5A} # 1.1 # 0; DBLIST32.OCX

Мне не пришлось регистрировать ни одну из библиотек (используя regsvr32), все они были уже правильно зарегистрированы. Я думаю, почему мое решение работает, если используется нотация "object = {[...]" (вместо обозначения "Reference = *\G {[...]" ). В VB Studio используется только ключ реестра и уходит корнями в C:\Windows\SysWOW64, в то время как другой путь заканчивается поиском в C:\Windows\System32

Кстати, установлен IE11. Независимо от того, имеет ли это значение, может знать только Билл Г. Я предполагаю, что мое решение работает независимо от того, какой IE установлен. Возможно, вам придется отменить регистрацию и зарегистрировать недостающие библиотеки, как указано в этом потоке.

Надеюсь, что это поможет любому, кто сталкивается с подобными проблемами.

Ответ 5

Я искал эту проблему часами и нажимал на сотни веб-сайтов, ни одна из них не работала.

Мое окончательное решение:

  • запуск: CMD
  • cd c:\Windows\SysWOW64 (найдите место)
  • regsvr32 MSCOMCTL.OCX

это решает первый. Для второго:

  • run: cmd
  • cd c:\Windows\Microsoft.NET\Framework\v4.0.30319
  • regtlibv12 msdatsrc.tlb

сделано.

это может не работать для всех (с учетом причины версии системы и т.д.)

Ответ 6

ПРОСТОЕ РЕШЕНИЕ

  • Создайте новый пустой проект и сохраните его
  • используя NOTEPAD, откройте VBP нового проекта и скопируйте строку MSCOMCTL
  • используя NOTEPAD, откройте файл .VBP вашего проекта.
  • замените строку MSCOMCTL и сохраните ее

DONE

удача

Ответ 7

У меня возникла проблема, при которой VB6 IDE не загружал общие элементы управления (Sp6) с установкой VB6 на W7 64 бит, в частности, comctrl и msmask. Я пробовал все предлагаемые решения с помощью regsrv32 (повышен), редактировал реестр, менял номер версии в vbp и т.д., Как это было предложено MS и другими. Все провалилось. Эти решения работали на моих других 2 PCS, но не на этом. В конце концов я удалил IE11, и после этого все работало правильно. IE10 никогда не был установлен на этом ПК - мы перешли от IE8 к IE11 и были вынуждены вернуться к использованию IE8.

Я должен сказать, что приведенное выше простое решение не решает проблему, которая заключается в том, что VB6 IDE не будет загружать общие элементы управления (используя меню "Компоненты" в разделе "Проект" ) - вы получаете сообщение об ошибке "Не загружаемый объект". Так что это произойдет (и я доказал это сам) в любом проекте, новом или старом, который пытается использовать тезисные общие элементы управления, которые не будут загружаться.

Итак, мое предложение всем, у кого есть эта проблема, - попробовать ручное регистрационное решение с использованием маршрута regsrv32, а затем изменить vbp для изменения версии и если они не удалили IE11 (и defintely IE10). Но это все равно не может быть 100% -ным решением, потому что, если ваши существующие файлы проекта ".vbp" содержат ссылки на неправильные общие элементы управления, вам необходимо исправить это вручную - здесь загружается новый проект, загружая компоненты, которые вам нужны в среде IDE, затем отредактируйте новое создание vbp с помощью блокнота и скопируйте номера версий для общих элементов управления в существующие файлы vbp.

Ответ 8

= > только что сказал Джей, просто удалите те записи реестра, которые указывают на другие пути, отличные от c:\windows\system32. Это преступники ошибки. Я получил эти ошибки в своей IDE vb6 и после удаления этих аномальные записи в реестре проблема была исправлена. работает как шарм.

Ответ 9

Я полагаю, что это может быть связано с проблемой, в которой Microsoft выпустила обновление для MScomCtlLib, которое было неправильно исправлено с помощью Microsoft, что вызвало ошибки реестра.

Я верю, что если вы последуете совету, изложенному в:

https://support.microsoft.com/fr-fr/kb/2597986

Ответ 10

У меня такая же проблема, но при запуске regsvr32 MSCOMCTL.OCX появляется ошибка ниже ошибки

Был загружен модуль "MSCOMCTL.OCX", но вызов DllRegisterServer завершился с кодом ошибки 0x8002801c.

Когда я запускаю CMD.EXE в качестве администратора, он решил мою проблему.

Некоторым временам VB6.EXE также нужно o запускать как администратор для доступа к некоторым проблемам реестра.

Удачи.