![]() |
Programm wird nich vollständig beendet
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: ![]() 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:
Die Datei libmysql.dll sowie mysql.pas befinden sich im selben Verzeichnis wie das Project und es wurde an ihnen nichts geändert!
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. 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 :wink: Klaus |
Re: Programm wird nich vollständig beendet
Herzlich willkommen in der Delphi-PRAXiS, Klaus.
An deinem Test-Programm ist nichts auszusetzen. Mein Test-Programm verschwindet, abgesehen von einer gewissen Latenzzeit bei der Anzeigeaktualisierung des Task-Managers, sofort aus der Prozessliste. Freundliche Grüße |
Re: Programm wird nich vollständig beendet
Nun ich habe jetzt wieder einmal die .pas und .dll neu heruntergeladen und im Ordner ersetzt jedoch ohne Erfolg.
Da fiel mir noch was ein, es könnte gut sein das sich mehrere mysqllib.dll Dateien auf meinem System befinden. Also habe ich mal mein System durchsucht und tatsächlich findet er noch einige Dateien. Könnte es möglich sein das eine andere nicht richtig kompatible .dll Datei verwendet wird, und wenn ja wie kann ich das Problem lösen? An was könnte es noch liegen? MfG Klaus |
Re: Programm wird nich vollständig beendet
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Klaus,
versuche es zuerst mal mit einer lokalen Installation, bevor du es mit 85.13.132.213 angehst. Anbei mein Testprogramm. Wenn auch das nicht zu deiner Zufriedenheit funktioniert, dann musst du mal die MySQL-Version und die DLL-Version mitteilen, welche du zum Testen verwendest. Willst du eine bestimmte DLL verwenden, dann speichere sie bei deiner ausführbaren Datei. Freundliche Grüße |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:14 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz