PVOID APIENTRY EngMapFile( _In_ LPWSTR pwsz, _In_ ULONG cjSize, _Out_ ULONG_PTR *piFile) { HANDLE hModule; PVOID pvBase; /* Load the file */ hModule = EngLoadModuleEx(pwsz, 0, 0); if (!hModule) { *piFile = 0; return NULL; } /* Map the file */ pvBase = EngMapModule(hModule, &cjSize); if (!pvBase) { EngFreeModule(hModule); hModule = NULL; } /* Set iFile and return mapped base */ *piFile = (ULONG_PTR)hModule; return pvBase; }
BOOL APIENTRY EngUnmapFile( _In_ ULONG_PTR iFile) { HANDLE hModule = (HANDLE)iFile; EngFreeModule(hModule); return TRUE; }
BOOL ClosePlotFile( HANDLE hPlotFile ) /*++ Routine Description: Arguments: Return Value: Author: 24-Oct-1995 Tue 14:31:55 created -by- Daniel Chou (danielc) Revision History: --*/ { PPLOTFILE pPF; if (pPF = (PPLOTFILE)hPlotFile) { EngFreeModule(pPF->hModule); EngFreeMem((PVOID)pPF); return(TRUE); } return(FALSE); }