Сообщения об ошибках или сбой Access после установки обновления для системы безопасности MS16-004

Симптомы

После применения обновлений безопасности 2881067, 2881029, 3039794 или 2920727, описанных в бюллетене по безопасности MS16-004, у вас возникнут проблемы, влияющие на базу данных Access при использовании определенных общих элементов управления Windows. В частности, эти проблемы возникают при использовании элементов управления, связанных с MSCOMCTL. OCX-файл, обновленный в обновлении для системы безопасности. К этим проблемам могут относиться следующие:

  • Программа завершает работу при попытке открыть объект, включающий один из элементов управления.

  • Вы получаете сообщения об ошибках, указывающие на то, что события были отменены. Примеры сообщений об ошибках включают (но не ограничиваются ими) следующие:

    Error 459: Object or class does not support the set of events. 
    
    2501: <EventName> action cancelled.
    
    The expression <EventName> you entered as the event property setting produced the following error: Object of class does not support the set of events.   
    

Причина

Эта проблема возникает из-за того, что обновление безопасности MS16-004 может препятствовать правильной загрузке некоторых элементов ActiveX в существующих базах данных Access или в режиме конструктора.

Разрешение

Чтобы устранить эту проблему, повторно зарегистрируйте MSCOMCTL. OCX-файл. Если метод 1 не устраняет проблему, может потребоваться использовать метод 2, чтобы сначала вручную удалить раздел реестра, связанный с MSCOMCTL. OCX.

Способ 1. Повторная регистрация MSCOMCTL. OCX из командной строки с повышенными привилегиями

Для повторной регистрации MSCOMCTL. OCX:

  1. Откройте командную команду администратора.

  2. В 64-разрядной системе выполните следующие команды:

     Regsvr32 /u "C:\Windows\SysWOW64\MSCOMCTL.OCX" Regsvr32 "C:\Windows\SysWOW64\MSCOMCTL.OCX"
    
  3. В 32-разрядной системе выполните следующие команды:

     Regsvr32 /u "C:\Windows\System32\MSCOMCTL.OCX" Regsvr32 "C:\Windows\System32\MSCOMCTL.OCX"
    

Способ 2. Обновление реестра вручную

Примечание.

Точно следуйте всем указаниям из этого раздела. Внесение неправильных изменений в реестр может привести к возникновению серьезных проблем. Прежде чем приступить к изменениям, создайте резервную копию реестра для восстановления на случай возникновения проблем.

  1. Закройте все программы Office.

  2. Нажмите кнопку Пуск, введите regedit в поле поиска Начать и нажмите кнопку ОК.

  3. В Редактор реестра найдите и удалите следующий подраздел версии 2.0:

    HKEY_CLASSES_ROOT\TypeLib{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}\2.0

  4. Выполните шаги 1–3 в методе.

Метод 3 (для администраторов). Запустите пакетный файл для автоматического обновления систем.

Примечание.

Точно следуйте всем указаниям из этого раздела. Внесение неправильных изменений в реестр может привести к возникновению серьезных проблем. Прежде чем приступить к изменениям, создайте резервную копию реестра для восстановления на случай возникновения проблем.

После успешного определения решения этой проблемы в среде с помощью методов 1 и 2 можно автоматизировать процесс. Для этого выполните следующие действия:

  1. Создайте текстовый файл и вставьте в него следующий текст:

    reg delete hkcr\typelib\{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}\2.0 /f
    
    if exist %systemroot%\SysWOW64\cscript.exe goto 64 
    %systemroot%\system32\regsvr32 /u mscomctl.ocx
    %systemroot%\system32\regsvr32 mscomctl.ocx
    exit
    
    :64
    %systemroot%\sysWOW64\regsvr32 /u mscomctl.ocx
    %systemroot%\sysWOW64\regsvr32 mscomctl.ocx 
    Exit
    
  2. Сохраните файл.

  3. Измените расширение имени файла с .txt на .bat.

  4. Запустите файл .bat. Для этого щелкните его правой кнопкой мыши и выберите команду Запуск от имени администратора. (В Windows XP дважды щелкните файл.)

Примечание.

Если в методе 1 вы определили, что вам не нужно удалять раздел реестра, упомянутый в методе 2, чтобы заставить приложение работать, можно удалить строку reg delete из пакетного файла.

Дополнительные сведения

Элементы управления, связанные с MSCOMCTL. OCX перечислены в диалоговом окне Вставка элемента ActiveX:

Элемент управления Microsoft ImageComboBox 6.0 (SP6)

Элемент управления Microsoft ImageList 6.0 (SP6)

Элемент управления Microsoft ListView 6.0 (SP6)

Элемент управления Microsoft ProgressBar 6.0 (SP6)

Элемент управления Microsoft Slider 6.0 (SP6)

Элемент управления Microsoft StatusBar 6.0 (SP6)

Элемент управления Microsoft TabStrip 6.0 (SP6)

Элемент управления панели инструментов (Майкрософт) 6.0 (SP6)

Элемент управления Microsoft TreeView 6.0 (SP6)

Примечание.

Номер версии и уровень пакета обновления могут отличаться от "6.0 (SP6)".

Также сообщается, что проблемы возникли в других продуктах Office после установки этого обновления, хотя симптомы могут отличаться от тех, которые возникают в Access. В других программах может не потребоваться вносить какие-либо изменения в реестр.

Ссылки

Дополнительные сведения об этом обновлении для системы безопасности см. в следующих статьях базы знаний Майкрософт: