Отображаемый в память файл – записать и считать информациюDelphi , Файловая система , ФайлыОтображаемый в память файл – записать и считать информациюunit MMapForm; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) BtnWrite: TButton; EditWrite: TEdit; BtnRead: TButton; EditRead: TEdit; procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); procedure BtnWriteClick(Sender: TObject); procedure BtnReadClick(Sender: TObject); private hMapFile: THandle; MapFilePointer: Pointer; public { Public declarations } end; var Form1: TForm1; implementation {$R *.DFM} procedure TForm1.FormCreate(Sender: TObject); begin hMapFile := CreateFileMapping( $FFFFFFFF, // file handle ... or memory nil, // security Page_ReadWrite, // access rights 0, // high memory size 10000, // low memory size 'DdhDemoMappedFile'); // mapped file name if hMapFile <> 0 then MapFilePointer := MapViewOfFile( hMapFile, // handle returned above File_Map_All_Access, // access rights 0, 0, 0) // access the entire mapped file else ShowMessage('hMapFile = 0'); if MapFilePointer = nil then ShowMessage('MapFilePointer = nil'); end; procedure TForm1.FormDestroy(Sender: TObject); begin UnMapViewOfFile(MapFilePointer); CloseHandle(hMapFile); end; procedure TForm1.BtnWriteClick(Sender: TObject); begin StrCopy(PChar(MapFilePointer), PChar(EditWrite.Text)); end; procedure TForm1.BtnReadClick(Sender: TObject); var S: string; begin S := PChar(MapFilePointer); EditRead.Text := S; end; end. Перевод контента на русский язык: Это проект Delphi, демонстрирующий использование файлов памяти (MMFs) в программировании Windows. Цель этого проекта - создать форму с двумя кнопками: "Write" и "Read". Когда пользователь нажимает кнопку "Write", она записывает текст из редактора на MMF. Когда пользователь нажимает кнопку "Read", она читает содержимое MMF и отображает его в другом редакторе. Вот разбивка кода: Форма
Проект имеет единственную форму ( Создание MMF
В процедуре Уничтожение MMF
В процедуре Запись данных в MMF
В процедуре Чтение данных из MMF
В процедуре Рекомендации
1. Обработка ошибок: программа не обрабатывает ошибки должным образом. Например, если создание или маппинг файла fails, она отображает сообщение об ошибке с помощью В целом, код демонстрирует, как создавать и использовать MMF в Delphi, но может улучшиться в обработке ошибок, управлении памятью и производительности. В статье описывается пример использования функции CreateFileMapping для создания отображаемого в память файла и записи/чтения информации из него с помощью операций MapViewOfFile и UnMapViewOfFile. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |