Einzelnen Beitrag anzeigen

Kratos

Registriert seit: 15. Okt 2019
51 Beiträge
 
Delphi 10.3 Rio
 
#1

Aus Textdatei in ADOConnection.ConnectionString

  Alt 15. Okt 2019, 10:27
Delphi-Version: 10.2 Tokyo
Hi Leute,

ich bin Delphi-Neuling und nutze Delphi 10.3. Das konnte ich aber leider hier im Forum nicht auswählen.
Ich hab das Forum schon durchsucht, aber nicht ganz das Richtige für mich gefunden. Ich hoffe es ist kein Problem, dass ich ein neues Thema erstellt habe. Vielleicht hat ja einer einen passenden Link parat, sodass dieser Thread schnell wieder geschlossen werden kann.

Mein Programmaufbau:
Code:
edtLaden(TEdit), btnLaden(TButton)
btnConnect(TButton)
ADOCOnnection
ListBox1
Meine Idee:
Ich klick auf btnLaden . TOpenDialog erscheint. Ich wähle eine txt-Datei aus. Der Pfad wird in edtLaden geladen. In der txt-Datei ist in einer einzigen Zeile ein ConnectionString gespeichert, den ich brauche um eine Verbindung zu einer Datenbank herzustellen.
--- Bis hier hin klappt alles.
Wenn ich jetzt auf btnConnect klicke, soll die erste Zeile/der Inhalt der txt-Datei in ADOConnection.ConnectionString geschrieben werden. Das klappt aber nicht. ich bekomme folgende Fehlermeldung:

 E2010 Inkompatible Typen: 'WideString' und 'procedure, untyped pointer or untyped parameter'

Der Inhalt der Datebank soll dann in ListBox1 angezeigt werden. Wenn ich den ConnectionString manuell in ADOConnection.ConnectionString eintrage, klappts.
Wenn ich den ConnectionString bereits bei FormCreate aufrufe, klappts auch.
Jedoch will ich später mit meinen Programm, mehrere Datenbanken einlesen, ohne das Programm schließen zu müssen und ohne den ConnectionString jedes Mal neu eintragen zu müssen.
Vielleicht kann mir ja jemand weiterhelfen

Mein Versuch:
Code:
procedure TForm.btnConnectClick(Sender: TObject);
begin
  ADOConnection.Connected := False;
  ADOConnection.ConnectionString := ListBox1.Items.LoadFromFile(edtLaden.Text);
  ADOConnection.Connected := True;
end;
Das klappt:
Code:
procedure TForm.FormCreate(Sender: TObject);
begin
  ADOConnection.ConnectionString := 'bliblablub';
end;
  Mit Zitat antworten Zitat