Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.16;
Скачать: CL | DM;

Вниз

Как перевести и понять?   Найти похожие ветки 

 
boalse ©   (2006-03-23 10:20) [0]

В MSDN есть описание структуры _BY_HANDLE_FILE_INFORMATION
Меня интересет два её поля:

DWORD nFileSizeHigh - High-order part of the file size.
DWORD nFileSizeLow - Low-order part of the file size.

Что означает информация в этих полях? Объясните, пожалуйста человеческим языком.

Я могу как-то узнать размер файла по этой информации?


 
Sandman25 ©   (2006-03-23 10:24) [1]

filesize = nFileSizeHigh*(2^64) + nFileSizeLow


 
Игорь Шевченко ©   (2006-03-23 10:26) [2]


> Что означает информация в этих полях?


Размер файла.


> Я могу как-то узнать размер файла по этой информации?


Да.

var
 filesize: LARGE_INTEGER;
 bhfi: BY_HANDLE_FILE_INFORMATION;
....
 filesize.LowPart := bfhi.nFileSizeLow;
 filesize.HighPart := bfhi.nFileSizeHigh;
 ShowMessage ("file size="+IntToStr(filesize.QuadPart));


 
Игорь Шевченко ©   (2006-03-23 10:26) [3]

Sandman25 ©   (23.03.06 10:24) [1]

32


 
wal ©   (2006-03-23 10:28) [4]

Старшая и младшая части размера файла.
var
 Size: Int64;
 SizeRec: Int64Rec absolute Size;
begin
 SizeRec.Hi := nFileSizeHigh;
 SizeRec.Lo := nFileSizeLow;
 // Размер файла в Size
end;


 
Sandman25 ©   (2006-03-23 10:33) [5]

Игорь Шевченко ©   (23.03.06 10:26) [3]

Спасибо.


 
boalse ©   (2006-03-23 10:33) [6]

То есть, nFileSizeHigh, это первые 4 байта переменной Int64, а nFileSizeLow - 4 последних? Спасибо!


 
Игорь Шевченко ©   (2006-03-23 10:46) [7]

boalse ©   (23.03.06 10:33) [6]

наоборот



Страницы: 1 вся ветка

Текущий архив: 2006.04.16;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.044 c
15-1143031660
pavel_guzhanov
2006-03-22 15:47
2006.04.16
А что такое .net?


15-1143260981
Чародей
2006-03-25 07:29
2006.04.16
Поиск


2-1144160297
TimScorp
2006-04-04 18:18
2006.04.16
FreeReport 2.32


15-1143572066
QuickFinder
2006-03-28 22:54
2006.04.16
Delphi5 for Windows x64


1-1141234487
Unitay
2006-03-01 20:34
2006.04.16
Примечание в Excel