Tag!
ich hab mir heut ein kleines Threadobjekt erstellt. Joa.. funktioniert soweit auch bloß bekomm ich kein OnTerminate Ereignis:
Delphi-Quellcode:
unit uSyncThread;
interface
uses
Classes, ZMySQLProxyUnit, uConsole;
type
TZSyncThread =
class(TThread)
private
FResult : TZResult;
procedure WriteDone();
procedure WriteError;
public
SQL : TZMySQLProxy;
Console : TZConsole;
Constructor Create(ASQL : TZMySQLProxy; AConsole : TZConsole);
protected
procedure Execute;
override;
end;
implementation
{ ZSyncThread }
constructor TZSyncThread.Create(ASQL : TZMySQLProxy; AConsole : TZConsole);
begin
Console := AConsole;
SQL := ASQL;
inherited Create(False);
end;
procedure TZSyncThread.Execute;
begin
SQL.SQL := '
SELECT * FROM z_wct_configs';
FResult :=
SQL.Execute;
if FResult.ZMessageType = zError
then
Synchronize(WriteError)
else
Synchronize(WriteDone)
// Normalerweiße wird hier "gestoppt" die WriteDone wird nicht aufgerufen
end;
procedure TZSyncThread.WriteDone;
begin
Console.WritelnEx('
[ DONE ]');
end;
procedure TZSyncThread.WriteError;
begin
Console.WritelnEx('
[ ERROR ]');
Console.WritelnEx(FResult.ZMessage);
end;
end.
Es gibts auch keine Fehler meldung - nur im Hauptprogramm - in einer Schleife wo geprüft wird ob der Thread fertig ist läuft alles weiter.
bitte um hilfe!!!
danke,
Daniel