Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi IdFtpServer.onClientID -> Disconnect (https://www.delphipraxis.net/186701-idftpserver-onclientid-disconnect.html)

KarstenDdorf 23. Sep 2015 14:31

IdFtpServer.onClientID -> Disconnect
 
Hallo Forum ;)

Ich habe recht lange gesucht, wie man vom Server aus an die ClientInfo kommt, die man im Client eintragen kann. Inzwichen habe ich gefunden, dass es ein eigenes Event ist. Wenn ich in diesem Event nun Feststelle, dass der Client veraltet ist, dann möchte ich ihn rausschmeißen (findet nach Login statt).

Alle Möglichkeiten, die ich dafür gefunden habe erzeugen aber eine Exception und damit einen Absturz des Servers. Ein Try Except hilft auch nicht dagegen.

procedure TftpsMain.ftpsClientID(ASender: TIdFTPServerContext; const AID: String);
begin
if aid <> 'xyz' then
try
//asender.Connection.SendCmd('Falsche ClientVersion, bitte updaten!');
asender.Connection.Disconnect;
//asender.Connection.Socket.CloseGracefully;
except end;
end;

Das SendCmd war ein Hilfloser Versuch, dem Client noch einen Grund mit auf den Weg zu geben, der kommt aber nicht an. Darunter zwei meiner Versuche, die Verbindung zu beenden.

Bei allen Versuchen kommt erst eine Zugriffverletzung und dann "Zugriff verweigert":shock:

Jemand eine Idee dazu?

Danke im voraus.

lg
Karsten


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:08 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz