Bestandspointers
Wanneer een bestand wordt geopend, koppelt Windows een bestandspointer aan de standaardstroom. Deze bestandswijzer is een 64-bits offsetwaarde die de volgende byte aangeeft die moet worden gelezen of de locatie voor het ontvangen van de volgende byte die is geschreven. Telkens wanneer een bestand wordt geopend, plaatst het systeem de bestandsaanwijzer aan het begin van het bestand, wat nul is. Elke lees- en schrijfbewerking gaat verder met de bestandswijzer door het aantal bytes dat wordt gelezen en geschreven. Als de bestandsaanwijzer zich bijvoorbeeld aan het begin van het bestand bevindt en een leesbewerking van 5 bytes wordt aangevraagd, bevindt de bestandsaanwijzer zich direct na de leesbewerking op offset 5. Terwijl elke byte wordt gelezen of geschreven, wordt de bestandspointer door het systeem weergegeven. De bestandspointer kan ook worden verplaatst door de functie SetFilePointer aan te roepen.
Wanneer de bestandswijzer het einde van een bestand bereikt en de toepassing probeert te lezen uit het bestand, treedt er geen fout op, maar worden er geen bytes gelezen. Daarom betekent het lezen van nul bytes zonder een fout dat de toepassing het einde van het bestand heeft bereikt. Het schrijven van nul bytes doet niets.
Een toepassing kan een bestand afkappen of uitbreiden met behulp van de functie SetEndOfFile. Met deze functie wordt het einde van het bestand ingesteld op de huidige positie van de bestandsaanwijzer.