SetFilePointer
michalkopacz
//C, C++
DWORD SetFilePointer(
HANDLE hFile,
LONG lDistanceToMove,
PLONG lpDistanceToMoveHigh,
DWORD dwMoveMethod);
//Delphi
function SetFilePointer(hFile: THandle; lDistanceToMove: Longint; lpDistanceToMoveHigh: Pointer; dwMoveMethod: DWORD): DWORD;
Funkcja modyfikuje pozycję wskaźnika do otwartego pliku.
Parametry:
hFile - uchwyt pliku,
lDistanceToMove - liczba bajtów, o jaką wskaźnik ma zostać przesunięty,
lpDistanceToMoveHigh - wskaźnik umieszczony na bardziej znaczącym słowie (liczba bajtów do przesunięcia),
dwMoveMethod - sposób przesunięcia wskaźnika, parametr przyjmuje jedną następujących wartości: FILE_BEGIN, FILE_CURRENT, FILE_END.
Jeżeli funkcja zostanie wykonana poprawnie i lpDistanceToMoveHigh
jest równe NULL
(nil
), funkcja zwraca mniej znaczące słowo wskaźnika do pliku. Jeżeli lpDistanceToMoveHigh
nie jest równe NULL
, funkcja dodatkowo zapisuje bardziej znaczące podwójne słowo nowego wskaźnika w zmiennej, na którą wskazuje.
Jeżeli funkcja nie zostanie wykonana poprawnie i lpDistanceToMoveHigh
nie jest równe NULL
, zwracana jest wartość -1. Z uwagi na to, że również taka wartość może być poprawnym wynikiem operacji, aby potwierdzić ewentualny błąd, musisz wywołać funkcję GetLastError
.