netzwerk
Eine Structure erstellen, die Daten füllen, die Structure senden.
Auf beide seiten, server und client, die gleiche Structure.
FF 
Auf beide seiten, server und client, die gleiche Structure.
Code: Alles auswählen
Structure udtDaten
TimeStamp.l
PosX.l
PosY.l
PosZ.l
Text.s{20} ; Konstante länge. Text mit in der Structure
EndStructure
;...
Daten.udtDaten
;...
len = SizeOf(udtDaten)
;...
Debug len
;SendNetworkData(ClientID, Daten, len)

Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
@#NULL
da Daten eine Strukture ist handelt es sich schon um ein Zeiger aud die Daten.
Daten und @Daten sind allso gleich.
@Killfrog
Schaue mal in der Hilfe nach Structure.
udtDaten ist der Aufbau der einzelnen Variablen die aneinandergehängt sind (udt User Data Type)
mit Daten.udtDaten wird dann erst der Speicherbereich Allokiert.
Zugriff der Variablen:
Daten\PosX = 1000
oder
x = Daten\Posx
P.S. Hatte in den letzten Tagen viel zu tun
da Daten eine Strukture ist handelt es sich schon um ein Zeiger aud die Daten.
Daten und @Daten sind allso gleich.
@Killfrog
Schaue mal in der Hilfe nach Structure.
udtDaten ist der Aufbau der einzelnen Variablen die aneinandergehängt sind (udt User Data Type)
mit Daten.udtDaten wird dann erst der Speicherbereich Allokiert.
Zugriff der Variablen:
Daten\PosX = 1000
oder
x = Daten\Posx
P.S. Hatte in den letzten Tagen viel zu tun

Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
hatte das netzwerk basteln ja erstmal sein gelassen ,doch kahm mir gestern eine idee.
bevor ich die idee nun teste und damit rumprobier frage ich euch ob das überhaupt klappen kann also:
ich sende alle meine gebrauchten variablen zusammengehängt und in fester reihenfolge bei jeder sendung und bastle dass dann beim empfang mit dem mid() befehl wieder auseinander. auf die art spare ich mir das erkennen welche variable da angekommen ist.
also würde das klappen?
bevor ich die idee nun teste und damit rumprobier frage ich euch ob das überhaupt klappen kann also:
ich sende alle meine gebrauchten variablen zusammengehängt und in fester reihenfolge bei jeder sendung und bastle dass dann beim empfang mit dem mid() befehl wieder auseinander. auf die art spare ich mir das erkennen welche variable da angekommen ist.
also würde das klappen?

PB:3.92
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
möglich....
aber mit Mid()-geschichten wirst du arg langsam sein...
besser wäre es, wenn du gleich nen kompletten speicherbereich sendest,
wo deine Vars eben hintereinanderliegen.
z.b. mit nem array:
erstelle dir ein array GameData.l(50)
da hast du dann alle benötigten variablen drin.
per netz musst du dann nur noch das array von 200byte länge verschicken,
packst es am ziel direkt in den korrespondierenden speicher,
und musst nicht mehr lange rumwuseln um nen string zu zerlegen,
sondern greifst direkt auf die einzelnen felder zu.
wenn die der name zu abstrakt ist, um ihn im prog zu verwenden,
bastel dir vielleicht ne spezielle struct.
aber mit Mid()-geschichten wirst du arg langsam sein...
besser wäre es, wenn du gleich nen kompletten speicherbereich sendest,
wo deine Vars eben hintereinanderliegen.
z.b. mit nem array:
erstelle dir ein array GameData.l(50)
da hast du dann alle benötigten variablen drin.
per netz musst du dann nur noch das array von 200byte länge verschicken,
packst es am ziel direkt in den korrespondierenden speicher,
und musst nicht mehr lange rumwuseln um nen string zu zerlegen,
sondern greifst direkt auf die einzelnen felder zu.
wenn die der name zu abstrakt ist, um ihn im prog zu verwenden,
bastel dir vielleicht ne spezielle struct.
Code: Alles auswählen
Structure Daten
Player1X.l
Player1Y.l
Player1Head.l
Player1HP.l
Player2X.l
Player2Y.l
Player2Head.l
Player2HP.l
EndStructure
Define GameData.Daten
;virtuelle funktion, die die daten in die struktur lädt
GetBuffer(@GameData)
;beispiel, wie die daten angewandt werden könnten
DisplaySprite(Player1Sprite, GameData\Player1X, GameData\Player1Y)
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
-
- Beiträge: 713
- Registriert: 22.03.2005 00:29
- Computerausstattung: Computer und Strom vorhanden
- Wohnort: LK Wolfenbüttel
Ähem 
Hallo erstmal.
Also ganz ehrlich, du solltest dir einfach mal die Hilfedatei ansehen und unter "Referens" mal auf "Network" klicken. Dort stehen nicht nur alle Netzwerkfunktionen, sondern auch zwei Beispielcodes mit denen man sofort einen Server zum empfangen erstellt und einen Clienten der die Daten senden. Erstmal anschauen, verstehen und dann ändern.
Ein paar kleine Daten zu senden ist im Grunde ganz einfach.
Gruß
Toshy

Hallo erstmal.
Also ganz ehrlich, du solltest dir einfach mal die Hilfedatei ansehen und unter "Referens" mal auf "Network" klicken. Dort stehen nicht nur alle Netzwerkfunktionen, sondern auch zwei Beispielcodes mit denen man sofort einen Server zum empfangen erstellt und einen Clienten der die Daten senden. Erstmal anschauen, verstehen und dann ändern.

Ein paar kleine Daten zu senden ist im Grunde ganz einfach.
Gruß
Toshy
1. Win10
PB6.1
PB6.1