Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Ошибка в ntdll.dll при закрытии рекордсета [D5, MSSQL]


AndriyB ©   (2008-10-16 19:39:00) 

Здраствуйте,

Работаю над проектом на Delphi 5. База даных - Sql Server 2005.
На Vista SP1 + Updates при закрытии ADO DataSet крэш - ошибка в ntdll.dll: "Access violation at address 77A159C3 in module 'ntdll.dll'. Read of address 612C3B11 ..."
Call Stack показал следующее:
...
RtlRaiseStatus
KiUserExceptionDispatcher
@IntfClear
TCustomADODataSet.InternalClose - здесь ошыбка при закрытии рекордсета: "FRecordsetObject := nil;"
TDataSet.CloseCursor
TDataSet.SetActive
TdcADODataSet.SetActive
TDataSet.Close
...
На других ОС работает без ошыбок. Более того работает без ошыбок на Vista если не ставить SP1 и апдейты.
Есть подозрение что проблема в версии MDAC компонентов: на Vista без SP1 версия 6.0.6000.1638, с SP1 и апдейтами - 6.0.6001.16000.
Но вот как изменить версию этих компонентов я не нешел.
Возможно кто нибудь сталкивался с такой ошибкой.
Буду благодарен за любые коментарии.

Спасибо,
Андрей.


AndriyB   (2008-10-17 11:22:00) [1]

Такая ошибка в нескольких клиентов на совершенно разных компютерах. Оказалось что та же самая ошибка вискакивает но только очень редко и на XP если на него накатить SP3 - с SP2 все работало без ошибок.
Вчера мне все таки удалось найти WorkAround - датасет работал в режиме LockType := ltBatchOptimistic и пост в базу через вызов FDataSet.UpdateBatch(); Сменил LockType на ltOptimistic и забрал FDataSet.UpdateBatch(); - бизнес логика позволяла такое изменение - все заработало. Пока что оставлю так. Клиенти довольны.
Спасибо всем за помощь.


stas   (2008-10-17 10:55:00) [2]

Я такое встречал на 98-й, после вирусов, как вылечить не разобрались сделали format C:\ и переустановили винду. Поверх установка тоже не помогла.


AndriyB   (2008-10-16 23:39:00) [3]

Нет. Но только что попробывал и через Native Client - та же самая ошибка.


stas   (2008-10-16 20:49:00) [4]

А подключаешься через Native client?


AndriyB   (2008-10-16 20:07:00) [5]

Да, два апдейта для ADO установлены.


AndriyB   (2008-10-16 20:06:00) [6]

С Вистой поставляется версия MDAC (только теперь ето WDAC - Windows DAC) версии 6.0 - и ета версия не доступна как отдельный пакет  - последняя версия которую можно скачать и установить ето 2.8 - вот только 2.8 не устанавливается на Висте.


sniknik   (2008-10-16 20:03:00) [7]

> Работаю над проектом на Delphi 5
апдейты все стоят? в d5 для ADO были исправления.


stas   (2008-10-16 19:46:00) [8]

Скачай последнюю версию MDAC с сайта Microsoft.


Наверх

Титульная страница Поиск, карта сайта Написать письмо