Marshal.AllocCoTaskMem Method (Int32)

 

Allocates a block of memory of specified size from the COM task memory allocator.

Namespace:   System.Runtime.InteropServices
Assembly:  mscorlib (in mscorlib.dll)

[<SecurityCriticalAttribute>]
static member AllocCoTaskMem : 
        cb:int -> nativeint

Parameters

cb
Type: System.Int32

The size of the block of memory to be allocated.

Return Value

Type: System.IntPtr

An integer representing the address of the block of memory allocated. This memory must be released with Marshal.FreeCoTaskMem.

Exception Condition
OutOfMemoryException

There is insufficient memory to satisfy the request.

AllocCoTaskMem is one of two memory allocation API methods in the Marshal class. (Marshal.AllocHGlobal is the other.) The initial memory content returned is undefined, and the allocated memory can be larger than the requested number of bytes. This method exposes the COM CoTaskMemAlloc function, which is referred to as the COM task memory allocator.

SecurityCriticalAttribute

requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.

Universal Windows Platform
Available since 8
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Windows Phone Silverlight
Available since 8.0
Windows Phone
Available since 8.1
Return to top
Show: