AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Ist der Server zu "schnell"?
Thema durchsuchen
Ansicht
Themen-Optionen

Ist der Server zu "schnell"?

Ein Thema von NightroadSora · begonnen am 28. Mär 2011 · letzter Beitrag vom 30. Mär 2011
 
NightroadSora

Registriert seit: 27. Mär 2011
11 Beiträge
 
#1

Ist der Server zu "schnell"?

  Alt 28. Mär 2011, 21:24
Ich hab ein Netzwerkprojekt. Der Client stellt bestimmte Anfragen, sendet erst nen Text und danach sofort nen Buf. So Wenn ich beim Server nen Haltepunkt einstelle und schrittweise durchgehe, klappts alles problemlos, wenn ich den rausnehme krieg ich ne Class Exception!

Kann ich delphi irgendwie sagen dass es n paar millisekunden oder so warten soll, damit evtl das DAtenpaket Zeit hat anzukommen?
Ich verzweifle an diesem verdammten Problem schon den ganzen Abend...


Das macht der server beim lesen...
Delphi-Quellcode:
procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
var
    Info:TInfo;
    Zahl:Integer;
begin
IDMSG:=Socket.receivetext;
if ClientReadCount < 1 then
case StrToInt(IDMSG) of
1 :
    begin
    Socket.ReceiveBuf(Info,SizeOf(Info));
    CustomerErstellen(Kaeuferzaehler,Info);
    read_customer(Kaeuferzaehler);
    Kaeufer:=KSearch(Kaeuferzaehler);
    memo2.Lines.add(Kaeufer.get_name);
    KDelall;
    end;
2: begin
    Socket.ReceiveBuf(Info,SizeOf(Info));
    Kaeufer:=Customerfinden(StrToInt(Info.name),Kaeuferzaehler); //Name enthält hier einfach nur die KID!
    with Info do begin
                  Name:=Kaeufer.get_name;
                  Vorname:=Kaeufer.get_vorname;
                  Adresse:=Kaeufer.get_adresse;
                  end;
    Socket.Sendtext('0201');
    Socket.Sendbuf(Info,SizeOf(Info));
    end;
end;
inc(ClientreadCount);
end;
Er kriegt von nem Clientprogramm entsprechend einen sendtext um ins richtige Case zu springen, und den Buf mit namen info.
Im Prinzip ist alles untere egal, denn das Ding ist, wenn ich wie gesagt nen Haltpunkt bei der Zeile:
IDMSG:=Socket.receivetext; setze und dann F9 drücke um den Rest durchzurattern geht alles hervorragend... wenn ich den Haltepunkt wegmache krieg ich den Fehler '' ist kein gültiger Integerwert ...

Geändert von alzaimar (28. Mär 2011 um 21:33 Uhr) Grund: Delphi-Tags eingefügt
  Mit Zitat antworten Zitat
 


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 02:28 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