ZwUnmapViewOfSection routine

The ZwUnmapViewOfSection routine unmaps a view of a section from the virtual address space of a subject process.

Syntax


NTSTATUS ZwUnmapViewOfSection(
  _In_      HANDLE ProcessHandle,
  _In_opt_  PVOID BaseAddress
);

Parameters

ProcessHandle [in]

Handle to a process object that was previously passed to ZwMapViewOfSection.

BaseAddress [in, optional]

Pointer to the base virtual address of the view to unmap. This value can be any virtual address within the view.

Return value

ZwUnmapViewOfSection returns an NTSTATUS value. Possible return values include:

Return codeDescription
STATUS_SUCCESS

The routine successfully performed the requested operation.

STATUS_ACCESS_DENIED

The caller does not have access rights to the process object or to the base virtual address of the view.

 

Remarks

This routine unmaps the entire view of the section that contains BaseAddress from the virtual address space of the specified process—even if BaseAddress does not point to the beginning of the view.

On return from ZwUnmapViewOfSection, the virtual-address region occupied by the view is no longer reserved and is available to map other views or private pages. If the view was also the last reference to the underlying section, all committed pages in the section are decommitted, and the section is deleted.

Note  If the call to this function occurs in user mode, you should use the name "NtUnmapViewOfSection" instead of "ZwUnmapViewOfSection".

Requirements

Version

Available starting with Windows 2000.

Header

Wdm.h (include Wdm.h, Ntddk.h, or Ntifs.h)

Library

Ntoskrnl.lib

IRQL

PASSIVE_LEVEL

DDI compliance rules

PowerIrpDDis, HwStorPortProhibitedDDIs

See also

ZwMapViewOfSection
ZwOpenSection

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft. All rights reserved.