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 administrado String y copia toda o parte de una cadena no administrada en ella.
Sobrecargas
| Nombre | Description |
|---|---|
| PtrToStringAuto(IntPtr) |
Asigna un administrado String y copia todos los caracteres hasta el primer carácter NULL de una cadena almacenada en la memoria no administrada en él. |
| PtrToStringAuto(IntPtr, Int32) |
Asigna un administrado String y copia el número especificado de caracteres de una cadena almacenada en la memoria no administrada en ella. |
PtrToStringAuto(IntPtr)
Asigna un administrado String y copia todos los caracteres hasta el primer carácter NULL de una cadena almacenada en la memoria no administrada en él.
public:
static System::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
Para 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 ptr parámetro no nulles ; de lo 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 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)
Asigna un administrado String y copia el número especificado de caracteres de una cadena almacenada en la memoria no administrada en ella.
public:
static System::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
Para las plataformas ANSI, la dirección del primer carácter ANSI.
- len
- Int32
Número de caracteres que se van a copiar.
Devoluciones
Cadena administrada que contiene una copia de la cadena nativa si el valor del ptr parámetro no nulles ; de lo 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 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)