Delphirus - прграммирование на delphi
   Все о delphi Delphirus - прграммирование на delphi
blocks.gif
Навигация
 

Главная
Статьи
Базы данных
Графика
Защита
Интернет
Система
Тексты
Мультимедиа
Файлы
Формы и окна
Другое
Советы
Базы данных
Графика
Интернет
Мультимедиа
Система
Тексты
Файлы
Файлы
Исходники
Компоненты
Инфо
Поиск по сайту
Обратная связь
Самое популярное
Аккаунт
Карта сайта

 
 
 

Советы по delphi \ Файловая система \ Файлы \ Пример отображаемых в памяти файлов

Пример отображаемых в памяти файлов

var file_, map : dword;
    buf: pointer;
begin
  file_ := CreateFile('c:file1.txt', GENERIC_READ, FILE_SHARE_READ,
  nil, OPEN_EXISTING, 0, 0);
  if file_ <> INVALID_HANDLE_VALUE then
    try
      map := CreateFileMapping(file_, nil, PAGE_READWRITE, 0, 0, nil);
      if map <> 0 then
        try
          buf := MapViewOfFile(map, FILE_MAP_ALL_ACCESS, 0, 0, 0);
          if buf <> nil then
            try

              // now here you have your file1.txt in memory
              // beginning at pointer "buf"

            finally UnmapViewOfFile(buf) end;
        finally CloseHandle(map) end;
    finally CloseHandle(file_) end;
end;

{
This logic maps your complete file into memory. It's not COPIED into memory,
only MAPPED. In the moment where you access the single bytes of the file in
memory, Windows internally reads the file for you in the fastest possible way.
}

Название: Пример отображаемых в памяти файлов
Дата публикации: 2004-06-15 (2459 Прочтено)

 
 

 

Page generation 0.035 seconds