Исправление: Mscomctl.ocx общих элементов управления Windows или Comctl32.ocx может вызвать приложение или Интегрированной среде разработки Visual Basic 6 неожиданно завершает работу, или может появиться сообщение об ошибке «Деление на нуль»

Переводы статьи Переводы статьи
Код статьи: 896559 - Vizualiza?i produsele pentru care se aplic? acest articol.
Внимание
Основная фаза поддержки для Microsoft Visual Basic 6.0 закончилась 31 марта 2005 года. Корпорация Майкрософт выпускает исправления, не связанный с безопасностью, так как оно содержит улучшения, которые были готовы для выпуска только до конца основной поддержки. Visual Basic 6.0 перешел к расширенной поддержки и расширенной поддержки выполняется до 31 марта 2008 г. Корпорация Майкрософт не является Расширение на этапе основной поддержки для Visual Basic 6.0 каким-либо образом.
Развернуть все | Свернуть все

В этой статье

Проблема

Существуют две версии общих элементов управления Windows корпорации Майкрософт. Comctl32.ocx содержит 5.0 общих элементов управления Windows и поставляется вместе с Microsoft Visual Studio 5.0. MSCOMCTL.ocx содержит 6.0 Общие элементы управления Windows и вошла в состав Visual Studio 6.0. Данное исправление устраняет следующие критические ошибки в этих элементах управления.

Общие элементы управления Windows 5.0: Comctl32.ocx

Рассмотрим следующий сценарий.
  • Выполняются приложения, которое устанавливает обработчик "диктора" для Microsoft Windows 2000 или более поздней версии операционной системы.
  • При запуске приложения, использующего элемент управления TreeView , от общих элементов управления Microsoft Windows 5.0 или в элементе управления ListView .
В этом случае приложение может аварийно завершить работу или может появиться сообщение об ошибке, подобное приведенному ниже:
Проект1: Project1.exe - ошибка приложения
Инструкция по «0x202d0f51» обратилась к памяти по адресу «0x40000001». Память не удалось «записать».Нажмите кнопку ОК, чтобы завершить программу
Примечание Как правило специальных приложений, созданных в Microsoft Active Accessibility установить ловушка "диктора". Например «Экранный диктор» построена на Microsoft Active Accessibility. Тем не менее служебных программ, работающих в операционной системе Microsoft Windows XP Tablet PC Edition также установить обработчик "диктора".

Общие элементы управления Windows 6.0: Mscomctl.ocx

При запуске приложения, использующего Mscomctl.ocx версии 6.1.97.64 или более поздней версии и приложения содержит элемент управления ListView с свойство AllowColumnReorder задано значение True, появляется следующее сообщение об ошибке при попытке изменить порядок столбцов:
Проект1: Project1.exe - ошибка приложения
Инструкция по «0x27618848» обратилась к памяти по адресу «0x016e1e90». Память может не быть прочитана.
В зависимости от настройки отладчика по умолчанию для компьютера появляется сообщение об ошибке «0xC0000094 делению на ноль» или приложение может аварийно завершить работу.

Примечание При запуске приложения в Интегрированной среде разработки Visual Basic 6 могут возникнуть обе эти проблемы.

Причина

5.0 Общих элементов управления Windows происходит потому, что Comctl32.ocx пытается скопировать элемент текста элемента ListView с помощью маски LVI_IMAGE, который имеет НУЛЕВОЙ элемент текста.

6.0 Общие элементы управления Windows происходит из-за изменения в версии 6.1.97.64 файл Mscomctl.ocx. Версия 6.1.97.64 входит в 826287. При запуске Visual Studio 6.0 на компьютере под управлением Windows XP или более поздней версии операционной системы, файл Mscomctl.ocx версии 6.1.97.64 изменяет поведение элемента управления ListView . Большинство вызовов управления ImageList в Mscomctl.ocx являются оболочками вызовов в ImageList оболочки класса общего элемента управления, определенный в Comctl32.dll. Тем не менее метод ImageList_GetImageRect не переносится. Этот метод по-прежнему использует более раннюю версию структуры ImageList и более ранней версии класса элемента управления ImageList , определенные в файл Mscomctl.ocx. Этот конструктор вызывает ошибку деления на ноль возникает во время операции переупорядочивания столбца.

Решение

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

Примечание Замкнутые исправление нельзя удалить или удалить после установки.

Следующий файл доступен для загрузки из Центра загрузки Майкрософт:
Свернуть это изображениеРазвернуть это изображение
Загрузить
Загрузите пакет Visual Basic 6.0 Общие элементы.
http://www.Microsoft.com/downloads/details.aspx?FamilyId=25437D98-51D0-41C1-BB14-64662F5F62FE
Дополнительные сведения о том, как загрузить файлы поддержки Майкрософт, см. в следующей статье базы знаний Майкрософт:
119591 Как загрузить файлы поддержки Microsoft через оперативные службы
Корпорация Майкрософт проверила этот файл на наличие вирусов. Корпорация Майкрософт использует последние антивирусные программы на дату, которая была учтена в файл. Файл хранится на защищенных серверах, что предотвращает внесение несанкционированных изменений в файл.

Исправление от корпорации Майкрософт для Visual Basic 6 SP6.
Английская версия данного исправления содержит атрибуты файла (или более поздними), приведенные в следующей таблице. Дата и время для этих файлов указаны в UTC. При просмотре сведений о файле, оно преобразуется в локальное время. Чтобы выяснить разницу между временем UTC и местным временем, откройте вкладку Часовой пояс элемента «Дата и время» на панели управления.
   Date         Time   Version    Size       File name
   ------------------------------------------------------
   18-Aug-2003  20:25  6.0.81.6   1,344,512  Comctl32.ocx     
   02-Nov-2004  00:16  6.1.97.86  1,064,208  Mscomctl.ocx     

Статус

Данное поведение является подтвержденной ошибкой продуктов Майкрософт, перечисленных в разделе «Информация в данной статье применима к:».

Дополнительная информация

Для получения дополнительных сведений щелкните следующие номера статей базы знаний Майкрософт:
827217 Исправление: Нарушение прав доступа в Windows 2000 или более поздней версии Comctl32.ocx
824684 Стандартные термины, используемые при описании обновлений программных продуктов Майкрософт

Свойства

Код статьи: 896559 - Последний отзыв: 29 сентября 2013 г. - Revision: 6.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Studio 6.0 Enterprise Edition
Ключевые слова: 
kbqfe kbvs600sp6 kbpending kbbug kbmt KB896559 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Данная статья переведена с использованием программного обеспечения Майкрософт для машинного перевода и, возможно, отредактирована посредством технологии Community Translation Framework (CTF). Корпорация Майкрософт предлагает вам статьи, обработанные средствами машинного перевода, отредактированные членами сообщества Майкрософт и переведенные профессиональными переводчиками, чтобы вы могли ознакомиться со всеми статьями нашей базы знаний на нескольких языках. Статьи, переведенные с использованием средств машинного перевода и отредактированные сообществом, могут содержать смысловое, синтаксические и (или) грамматические ошибки. Корпорация Майкрософт не несет ответственности за любые неточности, ошибки или ущерб, вызванные неправильным переводом контента или его использованием нашими клиентами. Подробнее об CTF можно узнать по адресу http://support.microsoft.com/gp/machine-translation-corrections/ru.
Эта статья на английском языке: 896559

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com