Hallo! Ich schreibe mir gerade einen Windows USB-Treiber, der Bulk Requests und einige Vendor Requests absetzt. Das funktioniert soweit auch alles prima. Das Gerät selbst hat so eine Art File-Pointer. Deswegen fand ich es praktisch, die API-Funktion SetFilePointer zu verwenden. Das funktioniert auch, aber nur, wenn das Gerät mit FILE_FLAG_OVERLAPPED geöffnet wird. Wird das Flag weggelassen, wird noch nicht einmal meine DispatchSetInformation-Routine aufgerufen. Trotzdem liefert der SetFilePointer-Aufruf keinen Fehler. Es passiert halt einfach ganz und gar nichts. Beobachtet habe ich das unter Windows 2000 und XP. Woran kann denn das liegen? Was fehlt mir da noch?
Wie ich jetzt an anderer Stelle erfahren habe, ist dieses Verhalten normal. Es wird einfach nur der CurrentByteOffset im FileObject geupdated, ein IRP bekomme ich dabei nicht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.