Export (0) Print
Expand All

Marshal.ReadIntPtr Method (Object, Int32)

Reads a processor native sized integer from unmanaged memory.

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

public static IntPtr ReadIntPtr(
	Object ptr,
	int ofs
)

Parameters

ptr
Type: System.Object

The base address in unmanaged memory of the source object.

ofs
Type: System.Int32

An additional byte offset, which is added to the ptr parameter before reading.

Return Value

Type: System.IntPtr
The integer read from unmanaged memory at the given offset.

ExceptionCondition
AccessViolationException

Base address (ptr) plus offset byte (ofs) produces a null or invalid address.

ArgumentException

ptr is an ArrayWithOffset object. This method does not accept ArrayWithOffset parameters.

ReadIntPtr enables direct interaction with an unmanaged C-style IntPtr array, eliminating the expense of copying an entire unmanaged array (using Marshal.Copy) to a separate managed array before reading its element values.

Reading from unaligned memory locations is supported.

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Portable Class Library

Supported in: Portable Class Library

Obsolete (compiler warning) in Windows Phone 8.1

  • SecurityCriticalAttribute 

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

Show:
© 2015 Microsoft