Läubi schrieb:
> Wenn was nicht funktioniert, ist das ein untrügerisches Zeichen dafür
> das 'was falsch ist.
> Was geht den nicht?
Was nicht funktioniert war mir bis heute morgen selber nicht klar!
Aber manchmal hilft es wenn man ein Nacht darüber schläft.
Ich möchte immer ein Zeichen von der Seriellen Schnittstelle lesen.
1 | ReadFile( hCom, &InChar[0], 1, &BytesRead, NULL);
|
und dann an die RETURN_STRING übergeben
1 | RETURN_STRING(&InChar[0], 1);
|
diese erwartet jedoch ein String, somit sucht die Funktion vom Pointer
ab bis zum String Ende, welches jedoch nicht vorhanden ist und nur
zufällig im Speicher hängt.
Lösung ist einfach ein String Ende selber hinzuzufügen.
1 | char InChar[2];
|
2 | InChar[0] = 3;
|
3 | InChar[1] = '\0';
|
4 | ReadFile( hCom, &InChar[0], 1, &BytesRead, NULL);
|
5 | RETURN_STRING(&InChar[0], 1);
|