[DllImport("kernel32.dll", SetLastError=true, ExactSpelling=true)]
static extern bool VirtualFreeEx(IntPtr hProcess, IntPtr lpAddress,
int dwSize, AllocationType dwFreeType);
[DllImport("kernel32.dll", SetLastError=true, ExactSpelling=true)]
public static unsafe extern bool VirtualFreeEx(
IntPtr hProcess, byte* pAddress,
int size, AllocationType freeType);
<DllImport("kernel32.dll")> _
Public Shared Function VirtualFreeEx(ByVal hProcess As IntPtr, _
ByVal lpAddress As IntPtr, _
ByVal dwSize As Integer, _
ByVal dwFreeType As AllocationType) As Boolean
End Function
[DllImport("kernel32.dll", SetLastError : true, ExactSpelling : true)]
static def VirtualFreeEx(hProcess as IntPtr, lpAddress as IntPtr, dwSize as int, freeType as AllocationType) as bool:
pass
[Flags]
public enum AllocationType
{
Commit = 0x1000,
Reserve = 0x2000,
Decommit = 0x4000,
Release = 0x8000,
Reset = 0x80000,
Physical = 0x400000,
TopDown = 0x100000,
WriteWatch = 0x200000,
LargePages = 0x20000000
}
[Flags]
enum AllocationType:
Commit = 0x1000
Reserve = 0x2000
Decommit = 0x4000
Release = 0x8000
Reset = 0x80000
Physical = 0x400000
TopDown = 0x100000
WriteWatch = 0x200000
LargePages = 0x20000000
None.
Please add some!
Please add some!
The ManagedWindowsApi project (http://mwinapi.sourceforge.net) provides a ProcessMemoryChunk class to allocate and access memory of a different process.