Поделиться через


Функция 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

См. также

MapViewOfFile

MapViewOfFileNuma2