Export (0) Print
Expand All

Marshal.WriteInt16 Method (Object, Int32, Int16)

Writes a 16-bit signed integer value to unmanaged memory at a specified offset.

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

public static void WriteInt16(
	Object ptr,
	int ofs,
	short val
)

Parameters

ptr
Type: System.Object

The base address in unmanaged memory of the target object.

ofs
Type: System.Int32

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

val
Type: System.Int16

The value to write.

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.

WriteInt16 enables direct interaction with an unmanaged 16-bit signed array, eliminating the expense of copying an entire unmanaged array (using Marshal.Copy) to a separate managed array before setting its element values.

Writing to 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