Marshal.PtrToStringUni Methode

Definition

Ordnet eine verwaltete String und kopiert alle oder einen Teil einer nicht verwalteten Unicode-Zeichenfolge darin.

Überlädt

Name Beschreibung
PtrToStringUni(IntPtr)

Weist ein verwaltetes String Zeichen zu und kopiert alle Zeichen bis zum ersten NULL-Zeichen aus einer nicht verwalteten Unicode-Zeichenfolge darin.

PtrToStringUni(IntPtr, Int32)

Weist eine verwaltete String Zeichenfolge zu und kopiert eine bestimmte Anzahl von Zeichen aus einer nicht verwalteten Unicode-Zeichenfolge darin.

PtrToStringUni(IntPtr)

Weist ein verwaltetes String Zeichen zu und kopiert alle Zeichen bis zum ersten NULL-Zeichen aus einer nicht verwalteten Unicode-Zeichenfolge darin.

public:
 static System::String ^ PtrToStringUni(IntPtr ptr);
[System.Security.SecurityCritical]
public static string PtrToStringUni(IntPtr ptr);
public static string PtrToStringUni(IntPtr ptr);
[<System.Security.SecurityCritical>]
static member PtrToStringUni : nativeint -> string
static member PtrToStringUni : nativeint -> string
Public Shared Function PtrToStringUni (ptr As IntPtr) As String

Parameter

ptr
IntPtr

nativeint

Die Adresse des ersten Zeichens der nicht verwalteten Zeichenfolge.

Gibt zurück

Eine verwaltete Zeichenfolge, die eine Kopie der nicht verwalteten Zeichenfolge enthält, wenn der Wert des ptr Parameters nicht nullist; andernfalls gibt diese Methode zurück null.

Attribute

Hinweise

PtrToStringUni ist nützlich für das benutzerdefinierte Marshalling oder für die Verwendung beim Mischen von verwaltetem und nicht verwaltetem Code. Da diese Methode eine Kopie des Inhalts der nicht verwalteten Zeichenfolge erstellt, müssen Sie die ursprüngliche Zeichenfolge entsprechend freigeben. Diese Methode stellt die entgegengesetzte Funktionalität der Marshal.StringToCoTaskMemUni Methoden und Marshal.StringToHGlobalUni Methoden bereit.

Diese API spiegelt die Windows Definition von Unicode wider, bei der es sich um eine UTF-16-2-Byte-Codierung handelt. Auf vielen Plattformen ohne Windows beträgt der Datentyp wchar_t 4 Byte, nicht 2 Byte. Wenden Sie sich an Den Compiler, um zu bestätigen, ob wchar_t sie verwendet werden kann oder char16_t stattdessen verwendet werden soll.

Weitere Informationen

Gilt für:

PtrToStringUni(IntPtr, Int32)

Weist eine verwaltete String Zeichenfolge zu und kopiert eine bestimmte Anzahl von Zeichen aus einer nicht verwalteten Unicode-Zeichenfolge darin.

public:
 static System::String ^ PtrToStringUni(IntPtr ptr, int len);
[System.Security.SecurityCritical]
public static string PtrToStringUni(IntPtr ptr, int len);
public static string PtrToStringUni(IntPtr ptr, int len);
[<System.Security.SecurityCritical>]
static member PtrToStringUni : nativeint * int -> string
static member PtrToStringUni : nativeint * int -> string
Public Shared Function PtrToStringUni (ptr As IntPtr, len As Integer) As String

Parameter

ptr
IntPtr

nativeint

Die Adresse des ersten Zeichens der nicht verwalteten Zeichenfolge.

len
Int32

Die Anzahl der zu kopierenden Unicode-Zeichen.

Gibt zurück

Eine verwaltete Zeichenfolge, die eine Kopie der nicht verwalteten Zeichenfolge enthält, wenn der Wert des ptr Parameters nicht nullist; andernfalls gibt diese Methode zurück null.

Attribute

Hinweise

PtrToStringUni ist nützlich für das benutzerdefinierte Marshalling oder beim Mischen von verwaltetem und nicht verwaltetem Code. Da diese Methode eine Kopie des Inhalts der nicht verwalteten Zeichenfolge erstellt, müssen Sie die ursprüngliche Zeichenfolge entsprechend freigeben. Diese Methode stellt die entgegengesetzte Funktionalität der Marshal.StringToCoTaskMemUni Methoden und Marshal.StringToHGlobalUni Methoden bereit.

Diese API spiegelt die Windows Definition von Unicode wider, bei der es sich um eine UTF-16-2-Byte-Codierung handelt. Auf vielen Plattformen ohne Windows beträgt der Datentyp wchar_t 4 Byte, nicht 2 Byte. Wenden Sie sich an Den Compiler, um zu bestätigen, ob wchar_t sie verwendet werden kann oder char16_t stattdessen verwendet werden soll.

Weitere Informationen

Gilt für: