mirror of
https://github.com/mirror/processhacker
synced 2026-06-08 16:03:24 +00:00
40e736cd63
* new reference counting system for handles, memory allocations and symbol provider * added terminal server objects (server, session, process) * proper SID class * moved logging into ProcessHacker.Common git-svn-id: svn://svn.code.sf.net/p/processhacker/code@1382 21ef857c-d57f-4fe0-8362-d861dc6d29cd
46 lines
1.1 KiB
C#
46 lines
1.1 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Text;
|
|
using ProcessHacker.Native.Api;
|
|
|
|
namespace ProcessHacker.Native
|
|
{
|
|
/// <summary>
|
|
/// Represents a LocalAlloc() memory allocation.
|
|
/// </summary>
|
|
public class LocalMemoryAlloc : MemoryAlloc
|
|
{
|
|
public LocalMemoryAlloc(IntPtr memory)
|
|
: this(memory, true)
|
|
{ }
|
|
|
|
public LocalMemoryAlloc(IntPtr memory, bool owned)
|
|
: base(memory, owned)
|
|
{ }
|
|
|
|
public LocalMemoryAlloc(int size)
|
|
: this(size, AllocFlags.LPtr)
|
|
{ }
|
|
|
|
public LocalMemoryAlloc(int size, AllocFlags flags)
|
|
{
|
|
this.Memory = Win32.LocalAlloc(flags, size);
|
|
|
|
if (this.Memory == IntPtr.Zero)
|
|
throw new OutOfMemoryException();
|
|
|
|
base.Size = size;
|
|
}
|
|
|
|
protected override void Free()
|
|
{
|
|
Win32.LocalFree(this);
|
|
}
|
|
|
|
public override void Resize(int newSize)
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
}
|
|
}
|