/*//=============================================================== << MEMORY MAP >> FILE : MEMORYMAP.H, MEMORYMAP.CPP DESC : Memory Map °ü¸® Ŭ·¡½º INIT BUILT DATE : 2005. 12. 11 LAST BUILT DATE : 2005. 12. 11 P.S.> - ÀϹÝÀûÀ¸·Î Á¸ÀçÇÏ´Â ÆÄÀÏ¿¡ Á¢±ÙÇÏ¿© Àб⸸ ÇÒ ¸ñÀûÀ¸·Î Á¦ÀÛµÈ ¸Þ¸ð¸® ¸Ê - ¹°¸®ÀûÀÎ ÆÄÀÏÀ» »õ·Î ¸¸µé°Å³ª Å©±â°¡ 0ÀÎ °æ¿ì CMemoryMap::Open ÀÇ ::CreateFileMapping ¿¡¼­ ¿¡·¯°¡ ¹ß»ýÇÒ ¼ö ÀÖÀ¸¹Ç·Î ÆÄÀÏÅ©±â È®ÀÎ Copyright¨Ï 2002~2009 B4nFter (b4nfter@gmail.com) and Co-Writers. All Rights Reserved. *///=============================================================== #pragma once /////////////////////////////////////////////////////////////////// // INCLUDE /////////////////////////////////////////////////////////////////// #include /////////////////////////////////////////////////////////////////// // DEFINE /////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////// // DECLARATION /////////////////////////////////////////////////////////////////// //*--------------------------------------------------------------- // TYPE : CLASS // NAME : CMemoryMap //*--------------------------------------------------------------- // DESC : Memory Map °ü¸® Ŭ·¡½º // PRGM : B4nFter //*--------------------------------------------------------------- class CMemoryMap { public: CMemoryMap(); ~CMemoryMap(); BOOL Open( LPCTSTR lpszFileName, DWORD dwFileOffsetHigh = 0, DWORD dwFileOffsetLow = 0, SIZE_T dwNumberOfBytesToMap = 0, LPCTSTR lpszMemoryMapName = NULL, DWORD dwDesiredAccess = GENERIC_READ, DWORD dwCreationDisposition = OPEN_EXISTING ); VOID Close(); BOOL ChangeMapView( DWORD dwFileOffsetHigh = 0, DWORD dwFileOffsetLow = 0, SIZE_T dwNumberOfBytesToMap = 0 ); BOOL Flush(); LPVOID GetBaseAddress(); UINT64 GetSize(); private: HANDLE m_hFile; HANDLE m_hMemoryMap; LPVOID m_lpBaseAddr; DWORD m_dwSizeLow; DWORD m_dwSizeHigh; };