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

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

База данных + Ini файл. [D6, IB6.x, ]


Malyatko ©   (2002-01-14 08:09:00) 

Доброе утро Господа! Появилась проблема с которой не могу справится:(.Есть InterBase"овская база данных путь к которой прописан в *.ini файле. При написании програмы все компоненты для работы с базой данных включая IBDatabase, IBTransacation и т.д поместил в DataModule.Из главной формы получил доступ к содержимому модуля данных. В самой форме пишу:
procedure TForm1.FormCreate(Sender: TObject);
var dn :string;
begin
Dmod.IBDatabase1.Connected:=true;
IniF:=Tinifile.Create(".\Lib2.ini");
Dn:=IniF.ReadString("IB","path",paths);
inif.Free;
Dmod.IBDatabase1.DatabaseName:=dn;
Dmod.IBDatabase1.Connected:=true;
Dmod.IBTransaction1.Active:=true;
end;
После запуска возникает ошибка: Access violation as address ... in module ... Read of address FFF... :( После чего сама программ продолжает работать нормально. До этого писал проги без DataModul и алгоритм чтения пути из Ini файла работал
нормально.
Сталкивался ли кто-то с такой проблемой и не подскажите как ее решить?
Буду очень признателен.


Belov   (2002-01-15 11:22:00) [1]

Project - Options - указываешь что DataModule1 создается первым,
затем Form1


psvital   (2002-01-15 08:21:00) [2]

to Ptiza

Или еще вместо OnCreate можно использовать OnShow..


Ptiza   (2002-01-14 10:47:00) [3]

Panov абсолютно прав , но если не хочешь менять кода , то
необходимо чтобы в файле проекта *.dpr первым создавался
Модуль данных Application.CreateForm(TDateModule1,DateModule1),
а не Application.CreateForm(TForm1,Form1)


panov   (2002-01-14 08:12:00) [4]

Используй приведенный код ля вызова в OnCreate для TDataModule.
В момент создания Form1 TDataModule со своими компонентами еще не существует. Отсюда и Exception.


Наверх

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