Ukazatele na soubory
Při otevření souboru systém Windows přidruží ukazatel souboru s výchozím datovým proudem. Tento ukazatel souboru je 64bitová hodnota posunu, která určuje další bajt, který se má přečíst, nebo umístění pro příjem dalšího zapsaných bajtů. Při každém otevření souboru systém umístí ukazatel souboru na začátek souboru, což je posunutá nula. Každá operace čtení a zápisu postupuje ukazatelem souboru o počet bajtů, které se čtou a zapisují. Pokud je například ukazatel souboru na začátku souboru a vyžaduje se operace čtení 5 bajtů, bude ukazatel souboru umístěn na posunu 5 ihned po operaci čtení. Při čtení nebo zápisu jednotlivých bajtů systém postupuje ukazatelem souboru. Ukazatel souboru lze také přemístit voláním funkce SetFilePointer.
Když ukazatel souboru dosáhne konce souboru a aplikace se pokusí číst ze souboru, nedojde k žádné chybě, ale nečtou se žádné bajty. Proto čtení nula bajtů bez chyby znamená, že aplikace dosáhla konce souboru. Zápis nula bajtů nic nedělá.
Aplikace může zkrátit nebo rozšířit soubor pomocí funkce SetEndOfFile. Tato funkce nastaví konec souboru na aktuální pozici ukazatele souboru.