Marshal.StringToCoTaskMemUTF8(String) 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í.
Copia el contenido de un String administrado en un bloque de memoria asignado desde el asignador de tareas COM no administrado.
public:
static IntPtr StringToCoTaskMemUTF8(System::String ^ s);
public static IntPtr StringToCoTaskMemUTF8 (string? s);
[System.Security.SecurityCritical]
public static IntPtr StringToCoTaskMemUTF8 (string s);
public static IntPtr StringToCoTaskMemUTF8 (string s);
static member StringToCoTaskMemUTF8 : string -> nativeint
[<System.Security.SecurityCritical>]
static member StringToCoTaskMemUTF8 : string -> nativeint
Public Shared Function StringToCoTaskMemUTF8 (s As String) As IntPtr
Parámetros
- s
- String
Cadena administrada que se va a copiar.
Devoluciones
nativeint
Entero que representa un puntero al bloque de memoria asignado a la cadena, o 0 si s
es null
.
- Atributos
Excepciones
El parámetro s
supera la longitud máxima permitida por el sistema operativo.
No hay suficiente memoria disponible.
Comentarios
StringToCoTaskMemUTF8 es útil para la serialización personalizada o para su uso al mezclar código administrado y no administrado. Dado que este método asigna la memoria no administrada necesaria para una cadena, incluido un terminador NULL, libere siempre la memoria llamando a Marshal.FreeCoTaskMem. Este método proporciona la funcionalidad opuesta de Marshal.PtrToStringUTF8. Los caracteres de la cadena se copian como caracteres UTF-8.