Marshal::PtrToStringAuto Method (IntPtr, Int32)
Allocates a managed String and copies the specified number of characters from a string stored in unmanaged memory into it.
Assembly: mscorlib (in mscorlib.dll)
- Type: System::IntPtr
For Unicode platforms, the address of the first Unicode character.
For ANSI plaforms, the address of the first ANSI character.
- Type: System::Int32
The number of characters to copy.
Return ValueType: System::String
A managed string that holds a copy of the native string if the value of the ptr parameter is not nullptr; otherwise, this method returns nullptr.
PtrToStringAuto is useful for custom marshaling or when mixing managed and unmanaged code. Because this method creates a copy of the unmanaged string's contents, you must free the original string as appropriate. PtrToStringAuto provides the opposite functionality of Marshal::StringToCoTaskMemAuto and Marshal::StringToHGlobalAuto.
requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.