C-Struktur aus named pipe lesen
Verfasst: Mittwoch 1. Juli 2020, 15:48
Ich möchte eine named pipe zur Kommunikation zwischen einem C-Program und Python verwenden.
Die Kommunikation mit Strings läuft soweit.
Nun möchte ich eine Struktur an Python übergeben. Und da fängt es an, nicht mehr zu funktionieren.
Die C-Seite sieht so aus:
Und auf der Pythonseite:
Die Fehlermeldung, die ich erhalte lautet:
Hat jemand einen Vorschlag, wie ich hier weiterkomme?
Die Kommunikation mit Strings läuft soweit.
Nun möchte ich eine Struktur an Python übergeben. Und da fängt es an, nicht mehr zu funktionieren.
Die C-Seite sieht so aus:
Code: Alles auswählen
typedef struct {
int a;
int b;
} testStruct;
...
testStruct ts;
ts.a = 65;
ts.b = 66;
write(fd, &ts, sizeof ts);
...
Code: Alles auswählen
class testStruct:
a = 0
b = 0
....
data:testStruct = os.read(fifo, 4)
print("Read", data.a, " ", data.b)
Mit "data:testStruct = os.read(fifo, 4)" wollte ich eine Typkonvertierung erzwingen. Das scheint aber wohl so nicht zu funktionieren.File "reader.py", line 27, in <module>
print("Read", data.a, " ", data.b)
AttributeError: 'bytes' object has no attribute 'a'
Hat jemand einen Vorschlag, wie ich hier weiterkomme?