Marshal.PtrToStringUni Método

Definición

Asigna un String administrado y copia en él total o parcialmente una cadena Unicode no administrada.

Sobrecargas

PtrToStringUni(IntPtr)

Asigna un String administrado y copia en él todos los caracteres hasta el primer carácter nulo de una cadena Unicode no administrada.

PtrToStringUni(IntPtr, Int32)

Asigna un String administrado y copia en él un número de caracteres especificado de una cadena Unicode no administrada.

PtrToStringUni(IntPtr)

Source:
Marshal.cs
Source:
Marshal.cs
Source:
Marshal.cs

Asigna un String administrado y copia en él todos los caracteres hasta el primer carácter nulo de una cadena Unicode no administrada.

C#
[System.Security.SecurityCritical]
public static string PtrToStringUni (IntPtr ptr);
C#
public static string? PtrToStringUni (IntPtr ptr);
C#
public static string PtrToStringUni (IntPtr ptr);

Parámetros

ptr
IntPtr

Dirección del primer carácter de la cadena no administrada.

Devoluciones

Cadena administrada que contiene una copia de la cadena no administrada si el valor del parámetro ptr no es null; en caso contrario, este método devuelve null.

Atributos

Comentarios

PtrToStringUni es útil para la serialización personalizada o para su uso al mezclar código administrado y no administrado. Dado que este método crea una copia del contenido de la cadena no administrada, debe liberar la cadena original según corresponda. Este método proporciona la funcionalidad opuesta de los Marshal.StringToCoTaskMemUni métodos y Marshal.StringToHGlobalUni .

Esta API refleja la definición de Windows de Unicode, que es una codificación de 2 bytes UTF-16. En muchas plataformas que no son de Windows, el wchar_t tipo de datos es de 4 bytes, no de 2 bytes. Consulte al compilador para confirmar si wchar_t se puede usar o char16_t se debe usar en su lugar.

Consulte también

Se aplica a

.NET 9 e outras versións
Produto Versións
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

PtrToStringUni(IntPtr, Int32)

Source:
Marshal.cs
Source:
Marshal.cs
Source:
Marshal.cs

Asigna un String administrado y copia en él un número de caracteres especificado de una cadena Unicode no administrada.

C#
[System.Security.SecurityCritical]
public static string PtrToStringUni (IntPtr ptr, int len);
C#
public static string PtrToStringUni (IntPtr ptr, int len);

Parámetros

ptr
IntPtr

Dirección del primer carácter de la cadena no administrada.

len
Int32

Número de caracteres Unicode que se van a copiar.

Devoluciones

Cadena administrada que contiene una copia de la cadena no administrada si el valor del parámetro ptr no es null; en caso contrario, este método devuelve null.

Atributos

Comentarios

PtrToStringUni es útil para la serialización personalizada o al mezclar código administrado y no administrado. Dado que este método crea una copia del contenido de la cadena no administrada, debe liberar la cadena original según corresponda. Este método proporciona la funcionalidad opuesta de los Marshal.StringToCoTaskMemUni métodos y Marshal.StringToHGlobalUni .

Esta API refleja la definición de Windows de Unicode, que es una codificación de 2 bytes UTF-16. En muchas plataformas que no son de Windows, el wchar_t tipo de datos es de 4 bytes, no de 2 bytes. Consulte al compilador para confirmar si wchar_t se puede usar o char16_t se debe usar en su lugar.

Consulte también

Se aplica a

.NET 9 e outras versións
Produto Versións
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0