Einzelnen Beitrag anzeigen

Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#15

AW: Large_Integer SetFilePointerEx Error 183

  Alt 23. Mär 2017, 20:34
Das Problem ist NICHT MSDN-Library durchsuchenSetFilePointer oder MSDN-Library durchsuchenSetFilePointerEx, sondern ein Logikfehler an anderer Stelle, der deine eigene Seek -Funktion fälschlicherweise den alten Error Code von MSDN-Library durchsuchenCreateFile zurückgeben lässt. Sprich: Eigentlich gibt es keinen Fehler, aber dein eigener Code denkt dennoch, dass Einer aufgetreten ist. Dieses Logikproblem solltest du als allererstes beheben. Danach - wenn es tatsächlich Non-VCL und auch Non-RTL sein soll - würde ich auf OPEN_EXISTING umsteigen, da es für deinen rein lesenden Anwendungszweck die deutlich bessere Wahl ist.

Wenn die RTL bzw. TFileStream ok ist, dann wäre dies auf jeden Fall die allereinfachste Möglichkeit. Das eigentliche Datei-Handle wird vom Stream weggekapselt, aber das solltest du eigentlich auch gar nicht benötigen. Btw. TFileStream unterstützt (zumindest in Delphi 10.1) auch ein Seek mit 64-Bit Offset, wobei das wohl tatsächlich bei dir nicht von Relevanz ist.
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat