Autor Beitrag
paddy14
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 122



BeitragVerfasst: Sa 14.05.11 00:23 
Moin Forum,

gibt es eine Möglichkeit Objekte übers Netwerk senden sowie strings???

Mfg patrick
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Sa 14.05.11 05:55 
Dafür kannst du das Objekt serialisieren, verschicken und danach wieder deserialisieren:
openbook.galileocomp...harp_2010_13_002.htm
paddy14 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 122



BeitragVerfasst: So 15.05.11 16:33 
Ok gut das habe ich soweit verstanden.

Noch eine Frage ich habe z.B. das Objekt Kunde, die Daten am anderen Ende mittelts cast in Kunde umwandeln, bekomme ich hin, aber wie sieht es mit mehreren Objekten aus.

Bsp.:

Ich habe die Objekte Kunde, Bestellung, Rechnung etc.

Wie kann ich die dann am anderen Ende unterscheiden, sprich ich wandele ja immer mit cast um, bloß wenn ich versuche Bestellung in Kunde zu casten naja ist ja klar das das ne Exception gibt.

Wie würdet ihr das lösen?
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: So 15.05.11 16:43 
Das ist eine Sache des Protokolls, das du entwickelst. Du brauchst einen bestimmten Aufbau der Pakete, die du verschickst. An deren Anfang stehen dann Headerdaten, anhand derer du selbst entscheiden kannst was es ist.

Dieses Tutorial ist zwar für Delphi, aber die Funktionsweise eines Protokolls und die Erklärungen dazu sind vom Prinzip her die selben:
www.delphi-library.de/topic_66706.html
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4700
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: So 15.05.11 17:08 
Bevor du dir sprichwörtlich die Hände schmutzig machst und tief ins Eingemachte greifst wäre es vielleicht hilfreich zu prüfen ob nicht eine Standardkommunikationslösung aus dem .Net Framework wie die WCF das die ganzen Teilaspekte wie zum Beispiel serialisieren schon löst nicht für dich passt.
paddy14 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 122



BeitragVerfasst: So 15.05.11 17:51 
Sorry ich kann mir dieses Tutorial nicht anschauen, hast du vllt ein anderes oder mir das kurz erklären was ich mir darunter vorstellen kann vllt auch mit einem kleinen bsp. code.

Danke.
paddy14 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 122



BeitragVerfasst: So 15.05.11 19:23 
Ich weiß nicht genau wie das mit den Headern aussehen soll.

Benutze Networkstream und tcpclient...

Oder was auch gut wäre wenn ihr konkrete Stichwörter für meine Googlesuche habt.

Serialisieren ist klar, halt nur das verschicken verschiedener Objekte steige ich nicht durch.

Wäre echt nett, danke.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: So 15.05.11 20:05 
user profile iconpaddy14 hat folgendes geschrieben Zum zitierten Posting springen:
Sorry ich kann mir dieses Tutorial nicht anschauen
Warum nicht? :gruebel:

user profile iconpaddy14 hat folgendes geschrieben Zum zitierten Posting springen:
Ich weiß nicht genau wie das mit den Headern aussehen soll.
Naja, du schickst eben vorher z.B. die Zahl 1, wenn es das eine Objekt ist und die zwei, wenn es das andere Objekt ist.

Du kannst ja beliebige Daten schicken. Die liest du dann vor dem Deserialisieren wieder aus und unterscheidest zwischen den Klassen.
paddy14 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 122



BeitragVerfasst: So 15.05.11 20:12 
Achso Ok, wenn ich das jetzt richtig verstanden habe dann sende ich im grundegenommen 2mal einmal z.B. objekt_id damit die gegeseite weiß um welches Objekt es sich handelt und danach dann das Objekt.

Wenn das so ist dann hatte ich gerade einen kleinen Denkfehler, ich dachte ich müsste da was im Objekt selber initalisieren und das nach dem senden iwie auslesen lassen, deswegen bin ich nicht weiter gekommen.

Ok danke dafür und einen schönen Abend noch.
paddy14 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 122



BeitragVerfasst: Di 17.05.11 14:35 
Guten Tag Forum,

habe da ein kleines Prob mit dem Serialisieren und Deserialisieren.

hier der Code vom Server:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
serial s = new serial();
s.id = 1;
s.nachricht = "foo";
BinaryFormatter formatter = new BinaryFormatter();
formatter.Serialize(stream, s);


und hier von Client:

ausblenden C#-Quelltext
1:
2:
3:
4:
Thread.Sleep(500);
BinaryFormatter formatter = new BinaryFormatter();
s = (serial)formatter.Deserialize(stream);
richTextBox1.Invoke(new MethodInvoker(ausgabe));


dabei bekomme ich folgende Exception, kann einer was damit anfangen und mir bitte erklären was ich falsch mache.

Exception: Die Assembly "server_serialisieren, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" kann nicht gefunden werden.

Danke