Announcement

Collapse
No announcement yet.

LoginParams der TDatabase-Komponente auslesen

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

  • LoginParams der TDatabase-Komponente auslesen

    Hallo zusammen,
    folgendes Problem: Bei Anmeldung an einer SQL-Datenbank wird OnLogin der TDatabase-Komponente ausgeführt. In dem erscheinenden Dialog gibt der Anwender jetzt Name und Paßwort an und kann danach auf die Datenbank zugreifen. Für mein Schnittstellenprogramm wäre es jetzt sehr interessant, wenn ich den unter User eingegeben Parameter mit merken könnte (und später weiterverwenden). Hat jemand eine Idee dazu?
    Im Moment verwende ich einen eigenen Anmeldedialog bei die eingegeben Parameter dann durchgereicht werden, aber ich bin bislang von Delphi immer elegantere Lösungen gewohnt.
    Stefan

  • #2
    Hi,
    Nach dem Anmelden müßten in TDatabase.Params eigentlich zwei Einträge mit 'UserName=' und 'Password=' vorhanden sein.

    Gruß Fal
    Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

    Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

    Comment


    • #3
      Hallo,

      was spricht gegen die OnLogin-Lösung? Bei mir sieht das so aus:
      <pre>
      {
      TDatabase.OnLogin wickelt die Abfrage nach dem Paßwort für den
      Benutzer SYSDBA ab. Da die zweite TDatabase-Verbindung für den
      zweiten Thread auch geöffnet werden muß, aber nur eine Paßwortabfrage
      ausreichen soll, speichert das Datenmodul sowohl den Benutzernamen
      als auch das Paßwort in eigenen Objektfeldern, um später darauf
      zurückgreifen zu können.
      }

      procedure TDM.DatabaseMainLogin(Database: TDatabase;
      LoginParams: TStrings);
      var
      sUser : String;
      sPwd : String;
      begin
      sUser := 'SYSDBA';
      sPwd := '';
      if LoginDialogEx('IBCSDemo', sUser, sPwd, True) then
      begin
      FDBUser := sUser;
      FDBPwd := sPwd;
      LoginParams.Values['USER NAME'] := FDBUser;
      LoginParams.Values['PASSWORD'] := FDBPwd;
      end;
      end;
      </pre&gt

      Comment

      Working...
      X