Old source code (in the code section below) that still working fine on Windows CE 5 fails on Windows Mobile 6.1. It is just the standard file mapping but for "huge" data files: 2 files with ~90MB each. The device has 256MB. MS improved DLL loading in 6.1 but they say that they use the memory management from the CE 5.0.
What is the problem with this code? How the problem can be solved (does not matter in the application or on the OS level)?
HANDLE hFile = ::CreateFileForMapping(szFile,GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL);
HANDLE hMap = ::CreateFileMapping(hFile, NULL, PAGE_READONLY, 0, 0, NULL);
LPVOID pMap = ::MapViewOfFile(hMap, FILE_MAP_READ, 0, 0, 0);