So, wo fange ich an?
Mit dem SmallInt und int habe ich lange experimentiert. Ich bekomme im Server genauso viel Bytes, wie mein Record groß ist. Habe vorher auch andere Kombinationen ausprobiert, dann waren aber Anzahl der im Server ankommenden Zeichen unterschiedlich zu meiner Record-Länge. (ReceiveLength <> sizeof(TLagerInfo).
Die Urpsrungsstruktur im C#-Teil war mal char, das ist aber
Unicode und damit doppelt so groß wie im Delphi. Freund google lieferte mir dann die Konvertierung
Code:
cText = new System.Text.ASCIIEncoding().GetBytes(User);
Damit habe ich hier tatsächlich "normale"
ASCII-Zeichen (und damit kein WideString)
Packed Record ändert die Ausrichtung der einzelnen Felder und damit auch die Größe des Records (bei meinen Experimenten hatte ich auch packed Records verwendet, aber dann war die Größe statt 96 Bytes 95 und da wusste ich nicht, wie ich das C# beibringe.
Wie gesagt: Im Ausgehenden Buffer auf der Client-Seite finde ich auch meine Eingaben wieder (wenn auch als
ASCII-Werte), nur der Eingang sieht sie nicht
Warum kein Webservice: Das ganze wird eine eigenständige Applikation auf einem speziellen Pocket-PC (Motorola MC75A) sein, welche die Entnahme von Lagerteilen mit dem ERP-System synchronisiert. Mit einer sehr bunten Oberfläche