Marshal.PtrToStringAuto Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Asigna un String administrado y copia en él total o parcialmente una cadena no administrada.
Sobrecargas
PtrToStringAuto(IntPtr) |
Asigna un String administrado y copia en él todos los caracteres hasta el primer carácter nulo de una cadena almacenada en memoria no administrada. |
PtrToStringAuto(IntPtr, Int32) |
Asigna un String administrado y copia en él el número de caracteres especificado de una cadena almacenada en memoria no administrada. |
PtrToStringAuto(IntPtr)
- Source:
- Marshal.Unix.cs
- Source:
- Marshal.Unix.cs
- Source:
- Marshal.Unix.cs
Asigna un String administrado y copia en él todos los caracteres hasta el primer carácter nulo de una cadena almacenada en memoria no administrada.
public:
static System::String ^ PtrToStringAuto(IntPtr ptr);
public static string? PtrToStringAuto (IntPtr ptr);
public static string PtrToStringAuto (IntPtr ptr);
[System.Security.SecurityCritical]
public static string PtrToStringAuto (IntPtr ptr);
static member PtrToStringAuto : nativeint -> string
[<System.Security.SecurityCritical>]
static member PtrToStringAuto : nativeint -> string
Public Shared Function PtrToStringAuto (ptr As IntPtr) As String
Parámetros
- ptr
-
IntPtr
nativeint
Para las plataformas Unicode, la dirección del primer carácter Unicode.
o bien
En las plataformas ANSI, la dirección del primer carácter ANSI.
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
Si la plataforma actual es Unicode, cada carácter ANSI se amplía a un carácter Unicode y este método llama a PtrToStringUni. De lo contrario, este método llama a PtrToStringAnsi.
PtrToStringAuto 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. PtrToStringAuto proporciona la funcionalidad opuesta de los Marshal.StringToCoTaskMemAuto métodos y Marshal.StringToHGlobalAuto .
Consulte también
- StringToCoTaskMemAuto(String)
- StringToHGlobalAuto(String)
- PtrToStringUni(IntPtr, Int32)
- PtrToStringAnsi(IntPtr)
Se aplica a
PtrToStringAuto(IntPtr, Int32)
- Source:
- Marshal.Unix.cs
- Source:
- Marshal.Unix.cs
- Source:
- Marshal.Unix.cs
Asigna un String administrado y copia en él el número de caracteres especificado de una cadena almacenada en memoria no administrada.
public:
static System::String ^ PtrToStringAuto(IntPtr ptr, int len);
public static string? PtrToStringAuto (IntPtr ptr, int len);
public static string PtrToStringAuto (IntPtr ptr, int len);
[System.Security.SecurityCritical]
public static string PtrToStringAuto (IntPtr ptr, int len);
static member PtrToStringAuto : nativeint * int -> string
[<System.Security.SecurityCritical>]
static member PtrToStringAuto : nativeint * int -> string
Public Shared Function PtrToStringAuto (ptr As IntPtr, len As Integer) As String
Parámetros
- ptr
-
IntPtr
nativeint
Para las plataformas Unicode, la dirección del primer carácter Unicode.
o bien
En las plataformas ANSI, la dirección del primer carácter ANSI.
- len
- Int32
Número de caracteres que se van a copiar.
Devoluciones
Una cadena administrada que contiene una copia de la cadena nativa si el valor del parámetro ptr
no es null
; en caso contrario, este método devuelve null
.
- Atributos
Excepciones
len
es menor que cero.
Comentarios
En las plataformas Unicode, este método llama a PtrToStringUni; en plataformas ANSI, llama a PtrToStringAnsi. No se realizan transformaciones antes de llamar a estos métodos.
PtrToStringAuto 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. PtrToStringAuto proporciona la funcionalidad opuesta de Marshal.StringToCoTaskMemAuto y Marshal.StringToHGlobalAuto.
Consulte también
- StringToCoTaskMemAuto(String)
- StringToHGlobalAuto(String)
- PtrToStringUni(IntPtr, Int32)
- PtrToStringAnsi(IntPtr)