Программирование для Windows NT

Размер файла


Размер файла определить очень просто - достаточно вызвать функцию GetFileSize, прототип которой приведен ниже:

DWORD GetFileSize(

  HANDLE  hFile,           // идентификатор файла

  LPDWORD lpFileSizeHigh); // адрес старшего слова для

                           // размера файла

Функция GetFileSize возвращает младшее 32-разрядное слово 64-разрядного размера файла с идентификатором hFile. Старшее слово размера файла записывается в переменную типа DWORD, адрес которой передается функции через параметр lpFileSizeHigh.

   Если функция завершилась без ошибок, вызванная вслед за ней функция GetLastError возвращает значение NO_ERROR. Если же произошла ошибка, функция GetFileSize возвращает значение 0xFFFFFFFF. При этом в слово, адрес которого задается параметром lpFileSizeHigh, записывается значение NULL. Код ошибки можно определить при помощи все той же функции GetLastError.

Для изменения размера файла вы можете выполнить операцию записи в него или использовать описанные выше функции SetFilePointer и SetEndOfFile.



Содержание раздела