Marshal.StringToCoTaskMemUni(String) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
관리되는 String의 내용을 관리되지 않는 COM 작업 할당자에서 할당된 메모리 블록으로 복사합니다.
public:
static IntPtr StringToCoTaskMemUni(System::String ^ s);
[System.Security.SecurityCritical]
public static IntPtr StringToCoTaskMemUni (string s);
public static IntPtr StringToCoTaskMemUni (string? s);
public static IntPtr StringToCoTaskMemUni (string s);
[<System.Security.SecurityCritical>]
static member StringToCoTaskMemUni : string -> nativeint
static member StringToCoTaskMemUni : string -> nativeint
Public Shared Function StringToCoTaskMemUni (s As String) As IntPtr
매개 변수
- s
- String
복사할 관리되는 문자열입니다.
반환
nativeint
문자열에 할당된 메모리 블록에 대한 포인터를 나타내는 정수이거나 s가 null
인 경우 0입니다.
- 특성
예외
s
매개 변수가 운영 체제에서 허용되는 최대 길이를 초과하는 경우
사용 가능한 메모리가 부족한 경우
설명
StringToCoTaskMemUni 는 사용자 지정 마샬링에 유용하거나 관리 코드와 관리되지 않는 코드를 혼합할 때 유용합니다. 이 메서드는 문자열에 필요한 관리되지 않는 메모리를 할당하므로 항상 를 호출 Marshal.FreeCoTaskMem하여 메모리를 해제합니다. 이 메서드는 의 Marshal.PtrToStringUni반대 기능을 제공합니다. 문자열의 문자는 유니코드 문자로 복사됩니다.
이 API는 UTF-16 2 바이트 인코딩인 유니코드의 Windows 정의를 반영합니다. Windows가 아닌 많은 플랫폼에서 wchar_t
데이터 형식은 2바이트가 아닌 4바이트입니다. 대신 사용할 수 있는지 또는 char16_t
사용해야 하는지 wchar_t
확인하려면 컴파일러를 참조하세요.
적용 대상
추가 정보
.NET