Доброе утро, возможно ли, чтобы MapViewOfFile дважды возвращал один и тот же адрес? Однако UnmapViewOfFile ведет себя неправильно, когда ему приходится дважды отображать один и тот же адрес. Мы получаем ошибку 487: Неверный адрес. Вот некоторый псевдокод, который показывает, как мы используем MapViewOfFile и UnMapViewOfFile:
retval = UnmapViewOfFile(TmpPrevMapPtr);
if (retval == 0){
DWORD lasterr = GetLastError();
printf("UNMAP Last Error = %d ...
}
MapPtr = (char*)::MapViewOfFile( hMapping, FILE_MAP_WRITE | FILE_MAP_READ,0,baseoff,
mappedlength);
if (MapPtr == 0){
throw cException(ERR_MEMORYMAPPING,TempFileName);
}
Thank you.