TIBDatabase + plik ini

0

Witam
otóż taką mam sytuację. Mam obiekt IBDataBase i chce wpisać ze pliku ini DatabaseName. Wiec czytam sobie co mam czytac z ini, czyta bez problemu, następnie robie procedurkę włączania bazy:

procedure TNDataObj.WlaczBaze;
begin
try
  NBConect.Close;
  NBConect.DatabaseName := NFLogowanie.PlikIni.SciezkaBazy;
  NBConect.Open;
except
  showMessage('Błą inizcjalizacji bazy danych...');
  Application.Terminate;
end;
end;

Otóz kompilator wyrzuca błąd na linni NBConect.Close; z treścią

Project Project1.exe raised exception class EAccessViolation with message'Access violation at address....'

nie wiem o co chodzi :/

0

Project Project1.exe raised exception class EAccessViolation with message'Access violation at address....'

Na pierwszy rzut oka kod wygląda niewinnie :)
Komunikat o błędzie jak powyżej pojawia się zwykle gdy obiekt nie został utworzony (Create). W tym przypadku podejrzewam, że nastepuje próba wywołania WlaczBaze zanim zostanie utworzona formatka na której umieszczono
NBConect. Mozna by sprawdzić
if Assigned(NBConnect) then...
Aby nie byo watpliwości proponuję utworzyc DataModule do niego wrzucić NBConnect, nastepnie w DataModule.OnCreate wywołać Wlaczbaze, a do OnCreate odłączenie się od bazy danych.

Pozdrawiam

0

Heh, rzeczywiście, DataModule miałem utowrzony od początku odpalełem to tyle razy sposobem Step Over ale nie zauważyłem że procedura włącz baze wywołuje sie przed utowrzeniem DM :/
[sciana]

dzięki za olśnienie...

1 użytkowników online, w tym zalogowanych: 0, gości: 1