> For the complete documentation index, see [llms.txt](https://www.pinvoke.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://www.pinvoke.dev/ntdll/ntprotectvirtualmemory.md).

# NtProtectVirtualMemory

```csharp
[DllImport("ntdll.dll", ExactSpelling = true)]
[DefaultDllImportSearchPaths(DllImportSearchPath.System32)]
public static extern unsafe NTSTATUS NtProtectVirtualMemory(
    HANDLE ProcessHandle,
    void* BaseAddress,
    uint* NumberOfBytesToProtect,
    uint NewAccessProtection,
    uint* OldAccessProtection);
```

[PAGE\_PROTECTION\_FLAGS](/memory/page_protection_flags.md)
