• Что бы вступить в ряды "Принятый кодер" Вам нужно:
    Написать 10 полезных сообщений или тем и Получить 10 симпатий.
    Для того кто не хочет терять время,может пожертвовать средства для поддержки сервеса, и вступить в ряды VIP на месяц, дополнительная информация в лс.

  • Пользаватели которые будут спамить, уходят в бан без предупреждения. Спам сообщения определяется администрацией и модератором.

  • Гость, Что бы Вы хотели увидеть на нашем Форуме? Изложить свои идеи и пожелания по улучшению форума Вы можете поделиться с нами здесь. ----> Перейдите сюда
  • Все пользователи не прошедшие проверку электронной почты будут заблокированы. Все вопросы с разблокировкой обращайтесь по адресу электронной почте : info@guardianelinks.com . Не пришло сообщение о проверке или о сбросе также сообщите нам.

Access Violation После Перехода С Ado На Unidac.

Статус
Закрыто для дальнейших ответов.
CrazyMax Оффлайн

CrazyMax

Принятый Кодер
Регистрация
29 Фев 2016
Сообщения
7
Баллы
45
Помогите, пожалуйста, избавиться от ошибки. Есть проект, который был написан на ADO. Начали перевод на UniDAC. Программа работает нормально и в полном объёме, но после её закрытия: если запущена из Delphi, выдаёт сообщение «Accessviolation…», если программа запущена из скомпилированного файла, то через некоторое время после закрытия выдаёт «Runtimeerror 216 …». Замечу, что до замены никаких ошибок не возникало. Заменили только ADOConnection, ADOQuery, DataSource на UniConnection, AccessUniProvider, UniTransaction, UniQuery, UniDataSource. База данных создана в Access 2010 на Windows 7 x86 платформе. Пытался проследить, где возникает ошибка. Ставил точки прерывания прямо перед «END.» в основном файле проекта – до этого момента всё в порядке. Вероятно, ошибка возникает на стадии очистки памяти от форм и модулей. Код проекта довольно большой, поэтому приведу лишь тестовый проект, в котором присутствует эта ошибка. Также в архиве с тестовым проектом есть скомпилированный файл, выдающий эту ошибку. Где ошибка, не могу додуматься уже который час.
 
CrazyMax Оффлайн

CrazyMax

Принятый Кодер
Регистрация
29 Фев 2016
Сообщения
7
Баллы
45
Решение найдено. У меня все формы создаются и удаляются «вручную» внутри приложения. Дело было в этом. Для исправления ошибки нужно, чтобы в главном модуле проекта, в самом конце, перед «END.», обязательно стоял Application.Run. С ADO работало и без этого, а вот с UniDAC нет.
 
Lomanu4 Оффлайн

Lomanu4

Команда форума
Администратор
Регистрация
1 Мар 2015
Сообщения
1,481
Баллы
155
Решение найдено. У меня все формы создаются и удаляются «вручную» внутри приложения. Дело было в этом. Для исправления ошибки нужно, чтобы в главном модуле проекта, в самом конце, перед «END.», обязательно стоял Application.Run. С ADO работало и без этого, а вот с UniDAC нет.
Только хотел помочь ... Ну иногда нужно смотреть функции или документацию библиотек,что бы от этого избавиться,тогда тему можно закрывать ?
 
CrazyMax Оффлайн

CrazyMax

Принятый Кодер
Регистрация
29 Фев 2016
Сообщения
7
Баллы
45
Да. Можно закрывать.
 
Статус
Закрыто для дальнейших ответов.
Вверх Снизу