Du solltest Free in deiner eigenen Klasse nicht überschreiben.
Überschreibe den Destructor Destroy.
Delphi-Quellcode:
TMiniChatClient =
class
private
{ Private declarations }
sid:
string;
lastid:
string;
nick:
string;
error:
string;
chaturl:
string;
protected
{ Protected declarations }
public
{ Public declarations }
constructor Create(Owner: TComponent;
const url:
string);
destructor Destroy;
override;
function Login(
const nickname:
string):integer;
function Logout:integer;
function postMsg(
const txt:
string):integer;
function getNewMsgs:TJvSimpleXmlElem;
published
{ Published declarations }
end;
Der Destructor Destroy:
Delphi-Quellcode:
destructor TMiniChatClient.Destroy;
begin
Logout;
inherited;
end;
Dieser Destructor wird beim Aufruf von Free automatisch aufgerufen. Das sollte dein Problem lösen.