AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi clientsocket.open dauert zu lang?
Thema durchsuchen
Ansicht
Themen-Optionen

clientsocket.open dauert zu lang?

Ein Thema von lkz633 · begonnen am 13. Feb 2004 · letzter Beitrag vom 14. Feb 2004
Antwort Antwort
lkz633

Registriert seit: 9. Jun 2002
Ort: Aachen
221 Beiträge
 
#1

clientsocket.open dauert zu lang?

  Alt 13. Feb 2004, 20:03
Hallo,

ich habe folgenden code:

Code:
procedure Tfmain.SpeedButton1Click(Sender: TObject);
begin
  if not ClientSocket.Active then begin
    ClientSocket.Open;
    ListBox1.Lines.Add(DateTimeToStr(now)+': '+'Anforderung an Server gesendet');
    clientsocket.Socket.SendText(edt_user.Text+','+edt_password.Text);
  end
  else begin
    ListBox1.Lines.Add(DateTimeToStr(now)+': '+'Anforderung an Server gesendet');
    clientsocket.Socket.SendText(edt_user.Text+','+edt_password.Text);
  end;
end;
Ich habe das Problem, das dass aller erste Mal der Text nie beim Server ankommt, d.h der text der direkt nach dem Open gesendet wird, danach klappt diese Funktion. Füge ich das Open z.B im Formcreate ein, klappt es einwandfrei.

Ich kann die Verbindung aber erst dann aufbauen und muss dann auch direkt den String senden. Wie bekomme ich das hin?
Auch ein eingebautetes Sleep hat nicht geholfen

Irgendwelche Ideen oder Lösungen?

Dank und Gruss
lkz633
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#2

Re: clientsocket.open dauert zu lang?

  Alt 13. Feb 2004, 20:49
das kommt daher, weil der socket noch nicht connectet ist.

clentsocket1.Open <<< das heisst nicht das der socket connectet ist, sondern eben das er sie öffnet
clientsocket.Socket.SendText(edt_user.Text+','+edt _password.Text); <<< der text kommt wohl beim 1.mal nicht an weil er eben noch nicht verbunden ist

guck mal bei den events. Da gibt es eins das heisst OnConnect << da muss du es reinmachen


btw: mach den button einfach enabled := false; und im OnConnect machst du wieder True
Mario
  Mit Zitat antworten Zitat
Bobator
(Gast)

n/a Beiträge
 
#3

Re: clientsocket.open dauert zu lang?

  Alt 13. Feb 2004, 22:01
Delphi-Quellcode:
procedure Tfmain.SpeedButton1Click(Sender: TObject);
begin
  if not ClientSocket.Active then begin
    ClientSocket.Active:=true; // damit müsste es gehen! vorher die address bei den propertys eingeben!
    ListBox1.Lines.Add(DateTimeToStr(now)+': '+'Anforderung an Server gesendet');
    clientsocket.Socket.SendText(edt_user.Text+','+edt_password.Text);
  end
  else begin
    ListBox1.Lines.Add(DateTimeToStr(now)+': '+'Anforderung an Server gesendet');
    clientsocket.Socket.SendText(edt_user.Text+','+edt_password.Text);
  end;
end;
  Mit Zitat antworten Zitat
lkz633

Registriert seit: 9. Jun 2002
Ort: Aachen
221 Beiträge
 
#4

Re: clientsocket.open dauert zu lang?

  Alt 14. Feb 2004, 11:37
Habe es jetzt im onconnect, danke für alle die geholfen haben

Gruss lkz633
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:50 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