다음을 통해 공유


Marshal.StringToCoTaskMemUTF8(String) 메서드

정의

관리되는 String의 내용을 관리되지 않는 COM 작업 할당자에서 할당된 메모리 블록으로 복사합니다.

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

매개 변수

s
String

복사할 관리되는 문자열입니다.

반환

IntPtr

nativeint

문자열에 할당된 메모리 블록에 대한 포인터를 나타내는 정수이거나 snull인 경우 0입니다.

특성

예외

s 매개 변수가 운영 체제에서 허용되는 최대 길이를 초과하는 경우

사용 가능한 메모리가 부족한 경우

설명

StringToCoTaskMemUTF8 는 사용자 지정 마샬링에 유용하거나 관리 코드와 비관리 코드를 혼합할 때 유용합니다. 이 메서드는 null 종결자를 포함하여 문자열에 필요한 관리되지 않는 메모리를 할당하므로 항상 를 호출 Marshal.FreeCoTaskMem하여 메모리를 해제합니다. 이 메서드는 의 Marshal.PtrToStringUTF8반대 기능을 제공합니다. 문자열의 문자는 UTF-8 문자로 복사됩니다.

적용 대상

추가 정보