Давай тогда всерьез обсудим вышеозначенную постановку:
Пользователь заказывает "окно" (параметрами Offset и Size) в неком файле.
И ВСЕ -- он получает стрим ИМЕННО заявленного размера, и байты в этом стриме соответствуют ИМЕННО заявленному смещению.
Даже если пользовательское "окно" выходит за размеры файла
Грубо говоря, если свойства PageMem и Mode канут в лету -- то будет всем счастье. И ВСЕ -- он получает стрим ИМЕННО заявленного размера, и байты в этом стриме соответствуют ИМЕННО заявленному смещению.
Даже если пользовательское "окно" выходит за размеры файла
Ибо: лучшее средство от перхоти - гильотина
Вот... Разве это не исполнимо