Может возникнуть ошибка «Нарушение доступа» при запуске запроса ADO для получения записей в асинхронном режиме на компьютере под управлением Windows Server 2008

Применимо к: Windows Server 2008 EnterpriseWindows Server 2008 StandardWindows Server 2008 Datacenter

Симптомы


Рассмотрим следующий сценарий:
В этом случае возможен сбой ADO. При возникновении этой проблемы появляется следующее сообщение об ошибке:
Нарушение прав доступа в msado15 при выполнении команды асинхронно
Кроме того возникает утечка памяти.

Причина


Эта проблема возникает потому, что поток, который выполняет асинхронный запрос пытается обратиться к члену структуры, сброшено основным потоком.

Когда асинхронный поток устанавливает состояние выполнения EXECSTATE_NOTEXECUTING, приостанавливает поток. Однако основной поток предполагается, что завершения асинхронного потока, а затем сбрасывает структуру. Таким образом асинхронного потока возникает ошибка «Нарушение прав доступа», когда поток пытается получить доступ к члену структуры.

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

Решение


Сведения об исправлении

Существует исправление от корпорации Майкрософт. Однако данное исправление предназначено для устранения только проблемы, описанной в этой статье. Применяйте это исправление только в тех случаях, когда наблюдается проблема, описанная в данной статье. Это исправление может проходить дополнительное тестирование. Таким образом если вы не подвержены серьезно этой проблеме, рекомендуется дождаться следующего пакета обновления, содержащего это исправление.

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

Примечание. Если наблюдаются другие проблемы или необходимо устранить неполадки, вам может понадобиться создать отдельный запрос на обслуживание. Стандартная оплата за поддержку будет взиматься только за дополнительные вопросы и проблемы, которые не соответствуют требованиям конкретного исправления. Чтобы получить полный список телефонов поддержки и обслуживания клиентов корпорации Майкрософт или создать отдельный запрос на обслуживание, посетите следующий веб-сайт корпорации Майкрософт:Примечание. В форме "Пакет исправлений доступен для скачивания" отображаются языки, для которых доступно исправление. Если нужный язык не отображается, значит исправление для данного языка отсутствует.

Предварительные условия

Для установки этого исправления, должна быть запущена Windows Server 2008 Пакет обновления 2 (SP2).

Дополнительные сведения о том, как получить пакет обновления для Windows Server 2008, щелкните следующий номер статьи базы знаний Майкрософт:

Как получить последний пакет обновления для Windows Server 2008 968849

Сведения о реестре

Для использования исправления, нет необходимости вносить изменения в реестр.

Необходимость перезагрузки

Не требуется перезагружать компьютер после установки данного исправления.

Сведения о замене исправлений

Это исправление не заменяет ранее выпущенные исправления.

Сведения о файлах

Английский (США) версия данного исправления устанавливает файлы с атрибутами, указанными в приведенных ниже таблицах. Дата и время для файлов указаны в формате UTC. Дата и время для файлов на локальном компьютере отображаются в местном времени с вашим текущим смещением летнего времени (DST). Кроме того, при выполнении определенных операций с файлами, даты и время могут изменяться.
Примечания к сведениям о файле Windows Server 2008
Важно. Исправления для Windows Server 2008 и Windows Vista исправления включены в те же пакеты. Однако только «Windows Vista» отображается на странице запрос исправления. Для получения пакета исправлений, который применяется к одной или обеих операционных систем, установите исправления, перечисленные в разделе «Windows Vista» на странице. Всегда смотрите раздел "Информация в данной статье относится к следующим продуктам" статьи для определения фактических операционных систем, к которым применяется каждое исправление.
  • Файлы, относящиеся к определенному продукту, этапу разработки (RTM, SPn) и направлению поддержки (LDR, GDR) можно определить путем проверки номера версий файлов, как показано в следующей таблице.
    ВерсияПродуктSR_LevelНаправление поддержки
    6.0.600
    1.
    22 xxx
    Windows Server 2008SP1LDR
    6.0.600
    2.
    22 xxx
    Windows Server 2008SP2LDR
  • 1 Пакет обновления интегрируется в окончательной версии Windows Server 2008. Таким образом файлов выпуска RTM относятся только к системе Windows Vista. Файлов выпуска RTM выглядят следующим образом: 6.0.0000. номер версии XXXXXX .
  • Файлы MANIFEST (.manifest) и MUM (.mum), устанавливаемые для каждой среды, указаны отдельно в разделе "Сведения о дополнительных файлах для системы Windows Vista и Windows Server 2008". MUM файлы и файлы МАНИФЕСТА и связанные файлы каталога безопасности (.cat), очень важны для поддержания состояния обновляемого компонента. Файлы каталога безопасности, для которых не перечислены атрибуты, подписаны цифровой подписью корпорации Майкрософт.
Для всех поддерживаемых 32-разрядных версий Windows Server 2008 и Windows Vista
Имя файлаВерсия файлаРазмер файлаДатаВремяХэш-кодыПлатформа
Msado15.dll6.0.6001.22679708,60828-Apr-201016:26MD5: 7348BFAFF6E0C7AF3275748004D182C9
SHA1: 679E3E280077F0DB90E96934BDF948141E8047BE
x86
Msado15.dll6.0.6002.22393708,60828-Apr-201017:48MD5: E3B4EC4CB327821764EDBF01978B71E5
SHA1: FC1C2471CF970828FF963DD141530FD730330A42
x86
Для всех поддерживаемых 64-разрядных версий Windows Server 2008 и Windows Vista
Имя файлаВерсия файлаРазмер файлаДатаВремяХэш-кодыПлатформа
Msado15.dll6.0.6001.22679978,94428-Apr-201017:00MD5: 33EDFF62C7152B00DFF5AE8E67807F45
SHA1: 0D89906E5EBA6CD0614B831E8AEDADC198A232BC
x64
Msado15.dll6.0.6002.22393978,94428-Apr-201017:46MD5: B33CDF642B8341803FA5E43619D8B971
SHA1: 7B8791DFF5930129ED392E19CD78A7B621189777
x64
Msado15.dll6.0.6001.22679708,60828-Apr-201016:26MD5: 7348BFAFF6E0C7AF3275748004D182C9
SHA1: 679E3E280077F0DB90E96934BDF948141E8047BE
x86
Msado15.dll6.0.6002.22393708,60828-Apr-201017:48MD5: E3B4EC4CB327821764EDBF01978B71E5
SHA1: FC1C2471CF970828FF963DD141530FD730330A42
x86
Для всех поддерживаемых IA-64-разрядных версий Windows Server 2008
Имя файлаВерсия файлаРазмер файлаДатаВремяХэш-кодыПлатформа
Msado15.dll6.0.6001.226791,798,14428-Apr-201016:31MD5: D20A937C4EE13C9235DFD745A3D19D3E
SHA1: 1151B00CF35B481098F03678AEE9839E1BDD89B9
IA-64
Msado15.dll6.0.6002.223931,798,14428-Apr-201017:26MD5: A04590E3C3E1897131DB6344638BD143
SHA1: ECD1FF0CEE3911A8448F9905785A12FE493EE00B
IA-64
Msado15.dll6.0.6001.22679708,60828-Apr-201016:26MD5: 7348BFAFF6E0C7AF3275748004D182C9
SHA1: 679E3E280077F0DB90E96934BDF948141E8047BE
x86
Msado15.dll6.0.6002.22393708,60828-Apr-201017:48MD5: E3B4EC4CB327821764EDBF01978B71E5
SHA1: FC1C2471CF970828FF963DD141530FD730330A42
x86

Статус


Корпорация Майкрософт подтверждает, что это проблема продуктов Майкрософт, перечисленных в разделе "Относится к".

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


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

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

Описание 824684 Стандартные термины, используемые при описании обновлений программных продуктов Майкрософт

Сведения о дополнительных файлах

Сведения о дополнительных файлах для Windows Server 2008

Дополнительные файлы для всех поддерживаемых версий Windows Server 2008 для систем на базе x86
Имя файлаX86_127373a30fc0a853c867ae5227217abe_31bf3856ad364e35_6.0.6002.22393_none_52380957bc5e2d19.manifest
Версия файлаНеприменимо
Размер файла737
Дата (UTC)29-Apr-2010
Время (UTC)06:11
Хэш SHA-1Неприменимо
Хеш-код MD5Неприменимо
Имя файлаX86_3fe43ece312522c5e7875878fab4a738_31bf3856ad364e35_6.0.6001.22679_none_5171fc99e8f516ba.manifest
Версия файлаНеприменимо
Размер файла737
Дата (UTC)29-Apr-2010
Время (UTC)06:11
Хэш SHA-1Неприменимо
Хеш-код MD5Неприменимо
Имя файлаX86_microsoft-windows-m..ents-mdac-ado15-dll_31bf3856ad364e35_6.0.6001.22679_none_0c77dbf589f4ea09.manifest
Версия файлаНеприменимо
Размер файла128,201
Дата (UTC)28-Apr-2010
Время (UTC)18:46
Хэш SHA-1Неприменимо
Хеш-код MD5Неприменимо
Имя файлаX86_microsoft-windows-m..ents-mdac-ado15-dll_31bf3856ad364e35_6.0.6002.22393_none_0e42ac498730df05.manifest
Версия файлаНеприменимо
Размер файла128,201
Дата (UTC)28-Apr-2010
Время (UTC)19:45
Хэш SHA-1Неприменимо
Хеш-код MD5Неприменимо
Дополнительные файлы для всех поддерживаемых 64-разрядных версий Windows Server 2008
Имя файлаAmd64_49970e950024625a33da31d1833c8f54_31bf3856ad364e35_6.0.6002.22393_none_ce789240d1ef325c.manifest
Версия файлаНеприменимо
Размер файла1,122
Дата (UTC)29-Apr-2010
Время (UTC)06:11
Хэш SHA-1Неприменимо
Хеш-код MD5Неприменимо
Имя файлаAmd64_8987a86cd484b8f079944725eb71e437_31bf3856ad364e35_6.0.6001.22679_none_0e310ec350ee0c89.manifest
Версия файлаНеприменимо
Размер файла1,122
Дата (UTC)29-Apr-2010
Время (UTC)06:11
Хэш SHA-1Неприменимо
Хеш-код MD5Неприменимо
Имя файлаAmd64_microsoft-windows-m..ents-mdac-ado15-dll_31bf3856ad364e35_6.0.6001.22679_none_6896777942525b3f.manifest
Версия файлаНеприменимо
Размер файла128,252
Дата (UTC)28-Apr-2010
Время (UTC)19:20
Хэш SHA-1Неприменимо
Хеш-код MD5Неприменимо
Имя файлаAmd64_microsoft-windows-m..ents-mdac-ado15-dll_31bf3856ad364e35_6.0.6002.22393_none_6a6147cd3f8e503b.manifest
Версия файлаНеприменимо
Размер файла128,252
Дата (UTC)28-Apr-2010
Время (UTC)19:40
Хэш SHA-1Неприменимо
Хеш-код MD5Неприменимо
Имя файлаX86_microsoft-windows-m..ents-mdac-ado15-dll_31bf3856ad364e35_6.0.6001.22679_none_0c77dbf589f4ea09.manifest
Версия файлаНеприменимо
Размер файла128,201
Дата (UTC)28-Apr-2010
Время (UTC)18:46
Хэш SHA-1Неприменимо
Хеш-код MD5Неприменимо
Имя файлаX86_microsoft-windows-m..ents-mdac-ado15-dll_31bf3856ad364e35_6.0.6002.22393_none_0e42ac498730df05.manifest
Версия файлаНеприменимо
Размер файла128,201
Дата (UTC)28-Apr-2010
Время (UTC)19:45
Хэш SHA-1Неприменимо
Хеш-код MD5Неприменимо
Дополнительные файлы для всех поддерживаемых версий Windows Server 2008 на базе процессоров IA-64
Имя файлаIa64_8568b42258de733ec25b15ef5a924eba_31bf3856ad364e35_6.0.6001.22679_none_a77645ac11916233.manifest
Версия файлаНеприменимо
Размер файла1,120
Дата (UTC)29-Apr-2010
Время (UTC)06:11
Хэш SHA-1Неприменимо
Хеш-код MD5Неприменимо
Имя файлаIa64_c9570c74895fd5d77545372d9ee7905e_31bf3856ad364e35_6.0.6002.22393_none_a31aba82ca907550.manifest
Версия файлаНеприменимо
Размер файла1,120
Дата (UTC)29-Apr-2010
Время (UTC)06:11
Хэш SHA-1Неприменимо
Хеш-код MD5Неприменимо
Имя файлаIa64_microsoft-windows-m..ents-mdac-ado15-dll_31bf3856ad364e35_6.0.6001.22679_none_0c797feb89f2f305.manifest
Версия файлаНеприменимо
Размер файла128,225
Дата (UTC)28-Apr-2010
Время (UTC)18:30
Хэш SHA-1Неприменимо
Хеш-код MD5Неприменимо
Имя файлаIa64_microsoft-windows-m..ents-mdac-ado15-dll_31bf3856ad364e35_6.0.6002.22393_none_0e44503f872ee801.manifest
Версия файлаНеприменимо
Размер файла128,225
Дата (UTC)28-Apr-2010
Время (UTC)18:55
Хэш SHA-1Неприменимо
Хеш-код MD5Неприменимо
Имя файлаX86_microsoft-windows-m..ents-mdac-ado15-dll_31bf3856ad364e35_6.0.6001.22679_none_0c77dbf589f4ea09.manifest
Версия файлаНеприменимо
Размер файла128,201
Дата (UTC)28-Apr-2010
Время (UTC)18:46
Хэш SHA-1Неприменимо
Хеш-код MD5Неприменимо
Имя файлаX86_microsoft-windows-m..ents-mdac-ado15-dll_31bf3856ad364e35_6.0.6002.22393_none_0e42ac498730df05.manifest
Версия файлаНеприменимо
Размер файла128,201
Дата (UTC)28-Apr-2010
Время (UTC)19:45
Хэш SHA-1Неприменимо
Хеш-код MD5Неприменимо