Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения
KANSoftWare

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

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.
}

Статья Пример отображаемых в памяти файлов раздела Файловая система Файлы может быть полезна для разработчиков на Delphi и FreePascal.


Комментарии и вопросы


Ваше мнение или вопрос к статье в виде простого текста (Tag <a href=... Disabled). Все комментарии модерируются, модератор оставляет за собой право удалить непонравившейся ему комментарий.

заголовок

e-mail

Ваше имя

Сообщение

Введите код




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Файлы ::


реклама



©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru Rambler's Top100
29.03.2024 15:57:30/0.036484003067017/2