Announcement

Collapse
No announcement yet.

EAccessViolation / Delphi

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • EAccessViolation / Delphi

    Hallo zusammen,
    ich habe bisher mit der BDE und den entsprechenden Komponenten in Delphi gearbeitet. Nun wollte ich mich einmal mit den IBX-Komponenten versuchen (alles gemäß dem Buch von A. Kosch). Nun hänge ich aber gleich am Anfang: Ich habe ein Datenmodul und zwei Formulare. Beim Aufruf erscheint ein Login bei dem der Benutzer seinen Namen u. sein Passwort eingeben soll. Ich übergebe die Werte an eine Funktion im Datenmodul. Schon im ersten Moment (bei IBDataBaseMain.Connected := true laufe ich auf die Fehlermeldung EAccessViolation...
    Wenn ich ein Datengrid nur anzeige funktioniert es prima. Nur sobald ich den Komponenten nur "hallo" sagen möchte, kommt die Fehlermeldung.

    Kann mir jemand sagen, was ich hier grundsätzlich falsch mache??
    Im Voraus besten Dank

    Thomas

  • #2
    Hallo,

    mit welcher IBX-Version wird gearbeitet? Die ersten Versionen hatten ein Bug in TIBDataBase, der sich bei einer eigenen Login-Implementierung bemerkbar gemacht hat.

    Auf der CDROM zum Buch ist im Verzeichnis <i>Kapitel 8\RedSys2\Projekt</i> das Projekt RedSys2.dpr zu finden, das einen Login-Vorgang für verschiedene Datenmodule nutzt. Der Login-Vorgang selbst sieht dort folgendermaßen aus (der Benutzername und der Pfad zur GDB-Datei wird aus einer INI-Datei ausgelesen und als Parameter übergeben):
    <pre>
    function TDM.DoLogin(sGDBPath, sUserName: String): Boolean;
    begin
    with IBDatabaseMain do
    begin
    DatabaseName := sGDBPath;
    Params.Values['user_name'] := sUserName;
    LoginPrompt := True;
    Connected := True;
    end;
    IBTransactionMain.Active := True;
    Result := IBDatabaseMain.Connected;
    end;
    </pre&gt

    Comment


    • #3
      Hallo,

      es handelt sich um die Version 4.52 (sofern die Informationen nach Mausklick auf eine Komponente stimmen).

      Thoma

      Comment

      Working...
      X