Advertisement
2_2002-2004 Files #126988

encapsulate Memory Mapped Files

Memory mapping is a powerful mechanism Win32 provides to implement shared memory and also to access files though a simple memory pointer without having to implement your own home brewed buffering mechanisms. As an example its as simple as calling void* lpData = mmf.Open(); CharUpperBuff((char*) lpData, mmf.GetLength()); to convert a file (of any length) to upper case. Areas where you might find this of interest include very large database files with fixed records, audio processing, string operations and image processing. The other side of memory mapped files is to implement shared memory. As you will probably know, Win32 puts each process into its own address space, thus making it impossible to pass ordinary pointers across process boundaries. With memory mapped files you get back this very useful mechanism. The enclosed zip file contains the CMemMapFile source code and a simple dialog based application which demonstrates all the functionality of the class. For further details about the example program have a look at the BOOL CTestmemmapApp::InitInstance() function and the CDialog1 member functions both in testmemmap.cpp PJ Naughter at http://indigo.ie/~pjn/index.html

AI

Riepilogo AI: This codebase represents a historical implementation of the logic described in the metadata. Our preservation engine analyzes the structure to provide context for modern developers.

Codice sorgente
original-source
Upload
Commenti originali (3)
Recuperato da Wayback Machine