Forum: Win32/Win64 API (native code)
Delphi
by LargoD,
7. Mär 2010
Wenn Du den Stop-String richtig eingegeben hast, sollte die Message Box erst aufgehen, wenn Du ok#13 und danach #10 gedrückt hast.
Vier Zeichen 'o', 'k', #13 und dann #10!
Hast Du die Timeouts wirklich abgestellt?
Ist Size wirklich 0?
Und setze mal FlowControl auf None.
Nein, was das PacketEvent Dir geliefert hat, ist aus dem Puffer verschunden.
Gruß
Forum: Win32/Win64 API (native code)
Delphi
by LargoD,
6. Mär 2010
Also nur mal so auf die Schnelle drübergesehen:
StartString := #10 ist falsch, wieso sollte das Modem vor der Antwort Linefeed senden?
StopString := #13+#10 sollte passen, denn normalerweise senden Modems nach der Antwort CR/LF, wenn sie nicht umkonfiguriert sind.
Ich hofft Du weißt, wie man CR/LF auf der Tastatur (zum Testen) sendet.
Also zum Senden:
ComDataPacket1.StartString:=''; //...
Forum: Win32/Win64 API (native code)
Delphi
by LargoD,
6. Mär 2010
OK, das mit den zwei Terminal-Fenstern habe ich verstanden.
TComPort und auch TComDataPacket habe ich schon öfter in verschiedenen Projekten eingesetzt, hat immer gut geklappt.
Zeig doch mal aktuellen Code, vor Allem
die Initialisierung des Paket-objektes und den OnPacket Handler
Gruß
Erich
Forum: Win32/Win64 API (native code)
Delphi
by LargoD,
6. Mär 2010
Hast Du Dir mal angesehen, was TCOmBuffer für ein Typ ist? Das ist kein String!
Bitte benutze die entsprechenden Events und sieh Dir den übergebenen String an, notfalls mal einen Breakpoint in den Eventhandler setzen und dann einfach mit dem Mauszeiger auf den übergebenen String zeigen, und schon siehst Du, was angekommen ist.
Ich verstehe noch nicht, wieso Du einmal den String an das Modem...