problem mit CFile
-
unsigned char data_to_send[256]; int nBytesRead = databin.Read (&data_to_send,256);folgendes Problem: sowohl derpuffer, der die daten aus der datei aufnehmen soll bleibt leer als auch nBytesRead 0 bleibt.
die datei wurde vorher auch zum lesen geöffnet
-
Datei leer? Wurde die Datei erfolgreich geöffnet?
-
nein nicht leer, und ja, wirde erfolgreich geöffnet
-
Tach auch,
schon etwas seltsam , dass da keine Daten drin stehen sollen..
Was willst du denn öffnen ? Text oder Binary?ich würd das so in etwa machen:
// hier wird als Binary geöffnet CFile cf( filename , CFile::modeRead|CFile::typeBinary) ; //dynamisch unsigned short *Arr; //von mir aus auch unsigned char .. //WORD = unsigned short Arr = new unsigned short[( cf.GetLength()/sizeof(WORD) )]; cfb.Read(Arr , cf.GetLength() ); //bei Binary noch überlegen was Low und High Byte ist..
-
Hallo,
chRis`- schrieb:
unsigned char data_to_send[256]; int nBytesRead = databin.Read(&data_to_send,256);das ist auch falsch, richtiger wäre (keinen &-Operator vor data_to_send schreiben!):
unsigned char data_to_send[256]; int nBytesRead = databin.Read(data_to_send,256);MfG
-
eof? (Klappts denn mit 1 statt 256???)
-
Ne, das kann's net sein:
MSDN schrieb:
Return Value
The number of bytes transferred to the buffer. Note that for all CFile classes, the return value may be less than nCount if the end of file was reached.D.h. er würde einfach dementsprechend weniger lesen.
-
ob mit oder ohne &-Operator, da tut scih nichts, obwohl das ganze bis auf das "unsigned" nicht von dem bsp in msdn abweicht... keiner ne idee woran es liegt?
-
mehr Code oder die genauere Angabe, in welchem "Umfeld" dieses Read steht, ist nötig, um das Problem beheben zu können (der &-Operator ist in jedem Falle hier falsch, auch wenn das dann offensichtlich mit dem Problem nichts zu tun hat).
MfG