Когда прикладная программа вызывает функцию CreateFile, чтобы открыть файл в первый раз, Windows помещает указатель позиции в файле (file pointer) в начале файла. Поскольку байты читаются из или записываются в файл, Windows продвигает указатель позиции на число прочтенных или записанных байтов.
Приложение может переместить указатель позиции в файле на заданное смещение при помощи вызова функции SetFilePointer.
Функция SetFilePointer может также использоваться, чтобы запросить текущую позицию указателя файла, определяя метод отсчета передвижения его как FILE_CURRENT, а расстояние - нуль, как показано в примере ниже.
HANDLE hFile;
DWORD dwCurrentFilePosition;
dwCurrentFilePosition = SetFilePointer(
hFile, // должен иметь GENERIC_READ и/или GENERIC_WRITE
0, // указатель не движется
NULL, // hFile не является достаточно большим,
// чтобы нуждаться в этом указателе
FILE_CURRENT); // определяет смещение от текущей позиции
|