Marshal.StringToCoTaskMemUTF8(String) Metodo

Definizione

Copia il contenuto di un oggetto gestito String in un blocco di memoria allocato dall'allocatore di attività COM non gestito.

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

Parametri

s
String

Stringa gestita da copiare.

Valori restituiti

IntPtr

nativeint

Intero che rappresenta un puntatore al blocco di memoria allocato per la stringa oppure 0 se s è null.

Attributi

Eccezioni

Il s parametro supera la lunghezza massima consentita dal sistema operativo.

Memoria insufficiente.

Commenti

StringToCoTaskMemUTF8 è utile per il marshalling personalizzato o per l'uso durante la combinazione di codice gestito e non gestito. Poiché questo metodo alloca la memoria non gestita necessaria per una stringa, incluso un carattere di terminazione Null, libera sempre la memoria chiamando Marshal.FreeCoTaskMem. Questo metodo fornisce la funzionalità opposta di Marshal.PtrToStringUTF8. I caratteri della stringa vengono copiati come caratteri UTF-8.

Si applica a

Vedi anche