Функция MapViewOfFile2 (memoryapi.h)
Сопоставляет представление файла или раздела на основе файла подкачки с адресным пространством указанного процесса.
Синтаксис
PVOID MapViewOfFile2(
[in] HANDLE FileMappingHandle,
[in] HANDLE ProcessHandle,
[in] ULONG64 Offset,
[in, optional] PVOID BaseAddress,
[in] SIZE_T ViewSize,
[in] ULONG AllocationType,
[in] ULONG PageProtection
);
Параметры
[in] FileMappingHandle
HANDLE для раздела, который должен быть сопоставлен с адресным пространством указанного процесса.
[in] ProcessHandle
HANDLE для процесса, с которым будет сопоставлен раздел. Дескриптор должен иметь маску доступа PROCESS_VM_OPERATION .
[in] Offset
Смещение от начала раздела. Он должен быть выровнен по 64 кб.
[in, optional] BaseAddress
Требуемый базовый адрес представления. Адрес округляется до ближайшей границы 64 КБ. Если этот параметр имеет значение NULL, система выбирает базовый адрес.
[in] ViewSize
Число сопоставляемых байтов. Нулевое значение (0) указывает, что будет сопоставлен весь раздел.
[in] AllocationType
Тип выделения. Этот параметр может быть равен нулю (0) или одному из следующих значений констант:
- MEM_RESERVE — сопоставляет зарезервированное представление.
- MEM_LARGE_PAGES — сопоставляет большое представление страницы. Этот флаг указывает, что представление должно быть сопоставлено с помощью поддержки больших страниц. Размер представления должен быть кратным размеру большой страницы, сообщаемой функцией GetLargePageMinimum , а объект сопоставления файлов должен быть создан с помощью параметра SEC_LARGE_PAGES . Если для параметра BaseAddress указано значение, отличное от NULL, значение должно быть кратным GetLargePageMinimum.
[in] PageProtection
Требуемая защита страницы.
Для объектов сопоставления файлов, созданных с помощью атрибута SEC_IMAGE, параметр PageProtection не действует и должен иметь любое допустимое значение, например PAGE_READONLY.
Возвращаемое значение
При успешном выполнении возвращает базовый адрес сопоставленного представления. В противном случае возвращает значение NULL , а расширенное состояние ошибки доступно с помощью GetLastError.
Комментарии
Эта функция реализована как встроенная функция в заголовке и не может быть найдена ни в одной библиотеке экспорта или библиотеке DLL. Это то же самое, что вызов MapViewOfFileNuma2 с последним параметром, равным NUMA_NO_PREFERRED_NODE
.
Требования
Минимальная версия клиента | Windows 10 версии 1703 [только классические приложения] |
Минимальная версия сервера | Windows Server 2016 [только классические приложения] |
Целевая платформа | Windows |
Header | memoryapi.h (включая Windows.h, Memoryapi.h) |
Библиотека | onecore.lib |
DLL | Kernel32.dll |