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

Вниз

Как адресуются огромные файлы?   Найти похожие ветки 

 
TStas ©   (2005-12-12 19:50) [0]

У меня есть приятель - дизайнер. Он сдесь делал какую-то картинку огромную с немиеренным разрешением. Файл получился больше 4 Гигов. Намного больше. И как такой файлище адресуется? Он ведь единый. 32 разрядного указателя же не хватит


 
VirEx ©   (2005-12-12 19:55) [1]

ну дык и ненадо больше то 32х разрядного, такой файл для просмотра видимо динамически надо подгружать, и в 64й системе :)


 
Sergey Masloff   (2005-12-12 19:59) [2]

Начиная с WinNT 3.51, то есть с момента рождения Win32 API файловые указатели 64-битные. Просто они частями возвращаются


 
TStas ©   (2005-12-12 19:59) [3]

Ну как? 2^32 = 4 294 967 296, а файл намного больше, раза в два. Подгружать, но адресовать-то байты в нем все равно надо. Вопроос же не том, влезет он впамять. Понятно, что не влезет.


 
TStas ©   (2005-12-12 20:00) [4]

>Sergey Masloff  
Не успел прочесть. :)


 
Verg ©   (2005-12-12 20:01) [5]


> У меня есть приятель - дизайнер.


Ясно, что не Иванов.


>  Файл получился больше 4 Гигов. Намного больше.


Чем что?


> И как такой файлище адресуется? Он ведь единый. 32 разрядного
> указателя же не хватит


Resets the current position of the handle stream.

function Seek(Offset: Longint; Origin: Word): Longint; overload; virtual;
function Seek(const Offset: Int64; Origin: TSeekOrigin): Int64; override;

Description

Use Seek to move the current position within the resource associated with the handle stream by the indicated offset. Seek allows an application to read from or write to a particular location within the resource.

The Origin parameter indicates how to interpret the Offset parameter. Origin should be one of the following values:

Value Meaning

soFromBeginning Offset is from the beginning of the resource. Seek moves to the position Offset. Offset must be >= 0.
soFromCurrent Offset is from the current position in the resource. Seek moves to Position + Offset.
soFromEnd Offset is from the end of the resource. Offset must be <= 0 to indicate a number of bytes before the end of the file.

Seek returns the new value of the Position property, the new current position in the resource.


 
Sergey Masloff   (2005-12-12 20:03) [6]

TStas ©   (12.12.05 19:59) [3]
читай хелп он рулез ;-)

Например

DWORD GetFileSize(
 HANDLE hFile,  // хэндл файла про который хотим узнать
 LPDWORD lpFileSizeHigh)  //Сюда вернется старшая часть 64-битного указателя

Результат функции - младщая часть указателя так как редко кто работает с файлами больше четырех гиг только ее и используют обычно.


 
Lamer@fools.ua ©   (2005-12-12 20:34) [7]

>>Sergey Masloff   (12.12.05 20:03) [6]

>так как редко кто работает с файлами больше четырех гиг только ее и используют обычно
Эта часть фразы уже устарела, IMHO. Щас народ такой ушлый пошёл. Хлебом не корми, дай какой-нить DVD образ покурочить +)



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

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

Наверх




Память: 0.48 MB
Время: 0.02 c
2-1135157242
110380
2005-12-21 12:27
2006.01.08
Как сделать в StringGrid цветными каждые нечетные столбцы?


8-1123180880
Ландграф Павел
2005-08-04 22:41
2006.01.08
возможно ли понизить битрейд mp3 без схемы mp3>wav>mp3


2-1134927056
Silica
2005-12-18 20:30
2006.01.08
Что означает данный код?


14-1134483178
iamdanil
2005-12-13 17:12
2006.01.08
Для умных программистов


10-1111046230
LgcPiton
2005-03-17 10:57
2006.01.08
Как узнать заущено ли приложение