Autor Beitrag
error
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 64



BeitragVerfasst: Fr 18.10.02 22:35 
Hi,
folgendes Schema:
Client -> Text -> Server (Connection established)
=> Server arbeitet
=> Server -> Text -> Client //Probleme

Das Problem ist, dass wenn ich ein OnClientRead-Event mache um Text zu senden, sendet er den Text bevor das Arbeiten fertig ist. Wie führe ich das schreiben erst aus wenn das Arbeiten fertig ist?
DeCodeGuru
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1333
Erhaltene Danke: 1

Arch Linux
Eclipse
BeitragVerfasst: Fr 18.10.02 22:39 
wie wäre es denn, wenn du deine "Arbeit" in eine Funktion auslagerst und dann in dem OnClientRead-Ereignis das Ergebnis der Funktion auswertest? Ich kenne jetzt zwar nicht genau deine Problematik, aber es müsste funktionieren.

_________________
Viele Grüße
Jakob
error Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 64



BeitragVerfasst: Fr 18.10.02 22:58 
Das Problem ist die Funktion verarbeitet empfangene Daten und sendet das Ergebnis. Und wenn ich bei OnClientWrite nur "Socket.SendText(ergebnis)" einfüge, wird nix gesendet da das Ergebnis noch nicht existiert (da noch keine Daten empfangen wurden)

mfg error
ps: kompliziert das ganze :p
DeCodeGuru
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1333
Erhaltene Danke: 1

Arch Linux
Eclipse
BeitragVerfasst: Sa 19.10.02 11:07 
Hi,

ich kenne - wie gesagt - deine Problematik nicht aber jetzt nun mal folgendes Beispiel:

Also im OnClientRead-Ereignis empfängst du einen Befhel mit Parametern. Ziel ist es, je nach Parametern einen Befhel auszuführen und dann das Ergebnis zurückzusenden. Also, du empfängst deinen Befhel und gehst dann mit ne Case-Verzweigung ran, um zu überprüfen, was das für ein Befehl ist. Je nach Befehl lässt du dann den Befehl ausführen. Also eine Funktion, die True oder False zurückgibt. Als Parameter übergibst du der Funktion den Empfangenden String. So! In der Funktion lässt du dann die Parameter auslesen und machst dann irgendetwas. Wenn die Ausführung erfolgreich war, gibt die Funktion True - wenn nicht, dann False - zurück.

In dem OnClientRead-Ereignis hast du ja deine Case-Verzweigung und in dem entsprechenden Teil machst du dann einfach noch eine If-Abfrage, ob der Befhelö auch ausgeführt wurde. Wenn ja, dann sendest du im OnClientRead-Ereignis einfach mit SendText einen Resultwert.

Ich hoffe du verstehst, was ich meine.

_________________
Viele Grüße
Jakob
error Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 64



BeitragVerfasst: Sa 19.10.02 12:00 
Fehler:

"Project xxxx raised exception class yyyyy with message 'zzzzzz'.
Process stopped. Use Step or Run to continue."
DeCodeGuru
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1333
Erhaltene Danke: 1

Arch Linux
Eclipse
BeitragVerfasst: Sa 19.10.02 14:13 
nur ne frage: Was soll ich mit dem Fehler anfangen, wenn ich den Quelltext nicht kenne. Ich galube, dass mir da die anderen User auch zustimmen :wink:

Poste doch einfach mal deinen Quellcode. Vielleicht können wir dir dann helfen.

_________________
Viele Grüße
Jakob