Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2006.01.08;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.007 c
10-1110228903
Homa_Programer
2005-03-07 23:55
2006.01.08
Редактор формул


14-1134366141
begin...end
2005-12-12 08:42
2006.01.08
С Днём рождения! 12 декабря


2-1134849713
Энди
2005-12-17 23:01
2006.01.08
Запуск приложений из программы


2-1135142913
Wood
2005-12-21 08:28
2006.01.08
Про Application.MessageBox...


8-1123012068
CHAINIK
2005-08-02 23:47
2006.01.08
Вырезать кусок из МР3





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский