PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ReadFile Funktion



wasa
15.07.2004, 13:01
tagchen!
habe folgendes Problem: Will über den COM1 / RS232 ein Messgerät auslesen!
Habe ein Programm geschrieben, welches den COM1 öffnet und Daten sendet. Das Problem dabei ist, das ich nichts rauslesen kann. Mein Programm stürzt bei folgender Zeile ab:
status = ReadFile (DriverHandle, Buffer, NumBytes, &BytesRead, 0);
ist irgendwas daran falsch? Ich hoffe Ihr könnt mir helfen und danke schonmal!
THX wasa

int CCOM_PORT::Read_Comport_HS (DWORD NumBytes, void *Buffer){
DWORD BytesRead;
BOOL status;
char *ptr;

ptr=(char*)Buffer;
status = ReadFile (DriverHandle, Buffer, NumBytes, &BytesRead, 0);
ptr+=BytesRead;
*(ptr)=0x00;
return TRUE;
}

wie gesagt, öffnen und Daten senden kann ich, nur auslesen nicht!
THX

wasa
16.07.2004, 03:01
Guten Morgen!

Habe herausgefunden warum das nicht ging.
Es wird bei der Übertragung zwischen Edngerät und PC kein RTS HANDSHAKE vereinbart, diesen hatte ich aber in meinem programm angegeben. Nun habe ich diesen auskommentiert und schon kann ich den com auslesen, also die readfile funktion ausführen.
Nun habe ich aber ein weiteres Problem: Ich bekommen immer den gleichen String übergeben. Die länge ist in Ordnung aber der Inhalt ist immer der gleiche mit dem ich leider nichts anfangen kann

Ich hoffe ihr könnt mir sagen warum das so ist, bzw. was ich noch beachten muss!
Auf jedenfall Danke ich schonmal
cu wasa

MacSeck
16.07.2004, 13:26
Gibt eine Funktion "Flush-Buffer"; die solltest Du nach dem Lesen mal aufrufen.:)

wasa
16.07.2004, 13:37
tagchen!

thx für post.
Wie heist die funktion genau? der bringt bei mir nur fehler wenn ich die versuche einzubinden!

danke schonmal!
cu wasa

MacSeck
17.07.2004, 13:28
Readme lesen, Online-Doku dto. und Knäckebrot dazu, dann findest Du das schon.

P.S. am besten "Mjölk Bröd":)

Unregistriert
19.07.2004, 08:46
Unter VB geht die Programmierung mit dem MSCOMM-Objekt super einfach. Vielleicht gibts sowas auch unter VC. In verschiedenen VB-Foren (VC?) gibts ausreichend Code-Beispiele.

Siegfried