Hi,
ich bin der Meinung, dass man nur dann eine
GUI benötigt, wenn sie wirklich nötig ist, ansonsten tut es auch eine Konsolenanwendung.
GUI:
Client auf die Form, Port und Host eingestellt, am Ende noch Open aufgerufen und im OnConnect nachgefragt, ob die Verbindung geklappt hat. Kein Problem.
Konsolenanwendung:
Eigene Klasse erstellt, Events werden NICHT zugewiesen. Warum ?
Delphi-Quellcode:
type
TClient = class
constructor Create;
public
Cli : TClientSocket;
procedure ClientError(Sender: TObject; Socket: TCustomWinSocket; ErrorEvent: TErrorEvent; var ErrorCode: Integer);
procedure ClientConnect(Sender: TObject; Socket: TCustomWinSocket);
procedure ClientDisconnect(Sender: TObject; Socket: TCustomWinSocket);
end;
constructor TClient.Create;
begin
Cli := TClientSocket.Create(nil);
with Cli do
begin
// Einstellungen
Address := '209.85.129.104';
Port := 80;
// Standardzuweisungen setzen
OnConnect := ClientConnect;
OnDisconnect := ClientDisconnect;
OnError := ClientError;
// Öffnen
Open;
end;
end;
procedure TClient.ClientConnect(Sender: TObject; Socket: TCustomWinSocket);
begin
if Socket.Connected then
WriteLn('Verbindung erfolgreich')
else
WriteLn('Verbindung fehlgeschlagen');
end;