Problem mit Socket.SendText :(

Alcatraz

Grünschnabel
Hey!

Ich bin dabei ein Instant Messenger zu programmieren.
Nun habe ich (wieder) ein Problem:
Ich will auf den Server connecten und sofort danach die Login-Daten senden.
Code:
  Client.Open;
  client.socket.SendText('LOGIN '+User+' '+Pass);

Nun die Login-Daten werden am Server nicht empfangen.
Wenn ich den SendText aber mit einem separatem Button ausführe funktionniert es.
Es ist mir aber wichtig, dass beides direkt hintereinander passiert.

Ich hab' versucht ein Sleep einzubauen:
Code:
  Client.Open;
  Sleep(1000);
  client.socket.SendText('LOGIN '+User+' '+Pass);

Eigenartigerweise wird der Client mit dem Server aber erst nach der 1 Sekunde VERBUNDEN.
Er müsste doch verbunden sein, und dann erst die Login-Daten senden!!

Vielen Dank im Voraus;

mfG;
~ The Alcatraz ~
 
Problem gelöst

Oh

Ich habe das Problem schon gelöst *lol* ;)
Sleep hat wohl das Connecten auch schon unterbrochen.

Für die, die es intressiert: Ich hab's mit 'nem Timer gelöst:
Code:
procedure TfrmMain.tmeConnectTimer(Sender: TObject);
  var I: integer;
begin
  I:=0;
  while I<10 do Inc(I);
  Client.socket.sendtext('LOGIN '+User+' '+Pass);
  tmeConnect.Enabled:=False;
end;

mfG;
~ The Alcatraz ~
 
Zurück