ReadFile ErrorCode 87
-
Hilfe,
ich habe ein Problem.
Ich öffne eine Datei mit CreateFile:HANDLE OpenFileWrite(char * filename) { HANDLE openhandle; openhandle = CreateFile(filename,GENERIC_WRITE,0,0,CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL,NULL); return openhandle; }Alles klappt hier.
Nun will ich ein Teil, der Datei einlesen.
Das mach ich mit ReadFile:fpuffer=new char[(int)start+1]; bool testtest; testtest=ReadFile(datei,&fpuffer,(DWORD)start,&bytesreaded,NULL); cout<<"Fehlercode: "<<GetLastError()<<endl; delete [] fpuffer;Das Handle big kriege ich hier :
datei=OpenFileRead(datei_name); if(datei==INVALID_HANDLE_VALUE) cout<<"Fehler beim öffnen der Datei!\n";ReadFile gibt 0 zurück und GetLastError 87.
Nun frage ich mich, wo der Fehler sitzt.
-
Afaik das & vor falsch fpuffer, dürfte aber nicht diesen Fehler verursachen. Was liefert denn CreateFile zurück? Hast du es mal versucht, ohne das Ganze in einzelne Funktionen aufzusplitten?!
-
Das & ist falsch, sollte aber keinen Error 87 liefern (Ungültiger Parameter)
Stimmt das Dateihandle wirklich wirklich wirklich?
-
Also ich habe einfach das & weggelassen.
Nun funktioniert es super.