Невозможно использовать vba flex grid msflxgrd.ocx в ms-access

Я хочу использовать гибкую сетку в моей форме доступа. Я успешно скачал и зарегистрировал msflxgrd.ocx. Теперь он появляется в списке вставляемых элементов управления ActiveX в дизайне форм, так что все выглядит нормально. Но когда я выбираю элемент управления с именем "Microsoft FlexGrid Control, версия 6.0", я получаю следующую ошибку:

Microsoft Office Access не поддерживает этот элемент управления ActiveX

Что тут происходит? Я использую Access 2007 - нужен ли мне другой элемент управления и поддерживается ли он только Access 2003? Или что-то еще не так?

2 ответа

Решение

Компоненты OCX могут быть отключены, поскольку они могут быть вредоносными, если они используются в браузере. Чтобы этот компонент работал, вам нужно отредактировать реестр: HKLM\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\ Флаги совместимости изменить значение с 1024 на) для CLSID {6262D3A0-531B-11CF-91F6-C2863C385E30} или CLSID вашего компонента OCX.

У меня была та же проблема, или то, что я считаю такой же проблемой, с Access 97 и элементом управления TreeView (который на самом деле из VB 5.0).

Несмотря на то, что я нашел и попробовал Vbcmpfix.exe, и он утверждал, что добавил необходимые мне лицензии, он этого не сделал. Я также попытался зарегистрироваться и отменить регистрацию и замену ocx. Я попробовал это с 64-битным cmd.exe и 32-битным. Без изменений вообще.

Лицензии MS VB5/6, очевидно, все живут в HKCR\Licenses.

Я смог решить эту ошибку "Вам не нужна лицензия", экспортировав эту ветку из рабочей коробки XP и запустив этот.reg в W7 64.

Существует также коллекция записей реестра лицензий vb6, которая называется VB6Controls.reg. В нем были те же значения, что и у меня, и я попробовал его в другом окне, и это сразу же сработало.

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

Другие вопросы по тегам