|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
TClientDataSet.LoadFromFile выдает AV при использовании пакетов
Все добрый день! Такая проблема. Есть небольшая тестовая группа проектов. В ней три проекта. 1 экзешник dpr и 2 пакета dpk. Экзешник называется Main, он скомпилен с рантайм пакетами и использует первый пакет, под названием Core. Этот пакет соответственно слинкован статически. Так же к этому пакету Core подключен через required пакет dsnap. Из которого используется TClientDataSet. Второй пакет называется Tasks. Он загружается Main'ом динамически, создается фрейм и отображается в главном окне. Этот фрейм (из пакета Tasks) содержит в Required пакет Core и тоже (как и Core) пользуется TClientDataSet.
Суть проблемы в следующем. Я загружаю Tasks, создаю фрейм, в этом фрейме создается TClientDataSet и делается LoadFromFile. После работы фрейм вместе с датасетом разрушаются и пакет Tasks выгружается. Если все это проделать второй раз, то LoadFromFile выдает AV. В чем тут может быть проблема? Самое интересное что AV выдается именно после поторной загрузки пакета. Т.е. можно сначала сколько угодно загружать пакет и выгружать его. Все ок. Но стоит один раз созать TClientDataSet, и пользоваться им можно как угодно только пока пакет не выгрузится. После перезагрузки пакета, LoadFromFile уже не работает. |
#2
|
|||
|
|||
Удалось решить таким образом: в пакет Core включил модули MidasLib и crtl. В пакете Tasks, в модуле фрейма, вписал в раздел uses MidasLib. Теперь думаю, правильно ли я сделал?
|