Einzelnen Beitrag anzeigen

Wenqu

Registriert seit: 27. Jan 2007
3 Beiträge
 
#1

Programm wird nich vollständig beendet

  Alt 27. Jan 2007, 13:06
Guten Tag,
Ich suche schon seit heute morgen verzweifelt nach einer Lösung meines folgenden Problems:

Mein Programm hat folgende Funktionen/Aufgaben:
Es soll eine Verbindung mit einer MySQL Datenbank aufbauen - Daten auslesen sowie Datensätze Löschen/Ändern
Eine FTP Verbindung aufbauen - Dort Ordner erstellen und löschen

MySQL habe ich durch folgendes Tutorial gelöst:
Datenbank-Einsteiger-Tutorial für mySQL-Datenbanken

Und FTP mit Indy.

Das klappt auch alles soweit aber sobald ich das Programm beende finde ich das Programm immernoch bei den Prozessen.
Ich konnte das Problem ansatzweise lokalisieren. Es liegt an der MySQL Verbindung, dazu habe ich mir folgendes kleines Programm geschrieben um es zu demonstrieren:

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, mySQL;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Label1: TLabel;
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  Descriptor: PMYSQL;

implementation

{$R *.dfm}

//Verbindung zur MySQL - Datenbank herstellen
function ConnectMySQL(Descriptor: PMYSQL; Host, User, PW, DB: string; Port:
  Integer): PMYSQL;
begin
  result := mysql_real_connect(Descriptor, PChar(Host), PChar(User),
    PChar(PW),
    PChar(DB), PORT, nil, 0);
end;


//Verbindung zur MySQL - Datenbank schließen
procedure Disconnect;
begin
  mysql_close(Descriptor);
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
  Descriptor := mysql_init(nil);

      Descriptor := ConnectMySQL(Descriptor, '85.13.132.213', 'd00246e8', '000000', 'd00246e8', 3306);
      if Assigned(Descriptor) then
        label1.Caption:='Connected';
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Disconnect;
  label1.Caption:='Disconnect';
end;

end.
Die Datei libmysql.dll sowie mysql.pas befinden sich im selben Verzeichnis wie das Project und es wurde an ihnen nichts geändert!

Ich denke es liegt daran, das er die Verbindung nicht richtig beenden kann...
Ich hoffe das sind genug Informationen damit ihr mir ein wenig helfen könnt.

Auf schnelle Hilfe
Klaus
  Mit Zitat antworten Zitat