Compartilhar via


Marshal.StringToCoTaskMemAuto(String) Método

Definição

Copia o conteúdo de um String gerenciado para um bloco de memória alocado do alocador de tarefas COM não gerenciado.

public:
 static IntPtr StringToCoTaskMemAuto(System::String ^ s);
public static IntPtr StringToCoTaskMemAuto (string? s);
public static IntPtr StringToCoTaskMemAuto (string s);
[System.Security.SecurityCritical]
public static IntPtr StringToCoTaskMemAuto (string s);
static member StringToCoTaskMemAuto : string -> nativeint
[<System.Security.SecurityCritical>]
static member StringToCoTaskMemAuto : string -> nativeint
Public Shared Function StringToCoTaskMemAuto (s As String) As IntPtr

Parâmetros

s
String

Uma cadeia de caracteres gerenciada a ser copiada.

Retornos

IntPtr

nativeint

O bloco de memória alocada ou 0, se s for null.

Atributos

Exceções

Memória insuficiente.

O tamanho de s está fora do intervalo.

Comentários

StringToCoTaskMemAuto é útil para marshaling personalizado ou para uso ao misturar código gerenciado e não gerenciado. Como esse método aloca a memória não gerenciada necessária para uma cadeia de caracteres, sempre libere a memória chamando FreeCoTaskMem. Esse método fornece a funcionalidade oposta de Marshal.PtrToStringAuto.

Os caracteres da cadeia de caracteres são copiados como caracteres Unicode.

Aplica-se a

Confira também