Condividi tramite


Marshal.StringToCoTaskMemUTF8(String) Metodo

Definizione

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

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.

Restituisce

IntPtr

nativeint

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

Attributi

Eccezioni

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

La memoria disponibile è 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