Marshal.PtrToStringAuto 메서드

정의

관리되는 문자열을 할당하고 관리 String 되지 않는 문자열의 전체 또는 일부를 복사합니다.

오버로드

Name Description
PtrToStringAuto(IntPtr)

관리 String 되는 문자를 할당하고 관리되지 않는 메모리에 저장된 문자열에서 첫 번째 null 문자까지 모든 문자를 복사합니다.

PtrToStringAuto(IntPtr, Int32)

관리 String 되는 메모리를 할당하고 관리되지 않는 메모리에 저장된 문자열에서 지정된 수의 문자를 복사합니다.

PtrToStringAuto(IntPtr)

Source:
Marshal.Unix.cs
Source:
Marshal.Unix.cs
Source:
Marshal.Unix.cs
Source:
Marshal.Unix.cs
Source:
Marshal.Unix.cs

관리 String 되는 문자를 할당하고 관리되지 않는 메모리에 저장된 문자열에서 첫 번째 null 문자까지 모든 문자를 복사합니다.

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

매개 변수

ptr
IntPtr

nativeint

유니코드 플랫폼의 경우 첫 번째 유니코드 문자의 주소입니다.

-또는-

ANSI 플랫폼의 경우 첫 번째 ANSI 문자의 주소입니다.

반품

매개 변수 값이 아닌 경우 관리되지 않는 ptr문자열의 복사본을 null 보유하는 관리되는 문자열이고, 그렇지 않으면 이 메서드가 반환됩니다null.

특성

설명

현재 플랫폼이 유니코드인 경우 각 ANSI 문자가 유니코드 문자로 확장되고 이 메서드가 호출됩니다 PtrToStringUni. 그렇지 않으면 이 메서드는 .를 호출합니다 PtrToStringAnsi.

PtrToStringAuto 는 사용자 지정 마샬링 또는 관리 코드와 관리되지 않는 코드를 혼합할 때 유용합니다. 이 메서드는 관리되지 않는 문자열 내용의 복사본을 만들기 때문에 원래 문자열을 적절하게 해제해야 합니다. PtrToStringAuto는 메서드의 Marshal.StringToCoTaskMemAuto 반대 기능을 Marshal.StringToHGlobalAuto 제공합니다.

추가 정보

적용 대상

PtrToStringAuto(IntPtr, Int32)

Source:
Marshal.Unix.cs
Source:
Marshal.Unix.cs
Source:
Marshal.Unix.cs
Source:
Marshal.Unix.cs
Source:
Marshal.Unix.cs

관리 String 되는 메모리를 할당하고 관리되지 않는 메모리에 저장된 문자열에서 지정된 수의 문자를 복사합니다.

public:
 static System::String ^ PtrToStringAuto(IntPtr ptr, int len);
public static string? PtrToStringAuto(IntPtr ptr, int len);
public static string PtrToStringAuto(IntPtr ptr, int len);
[System.Security.SecurityCritical]
public static string PtrToStringAuto(IntPtr ptr, int len);
static member PtrToStringAuto : nativeint * int -> string
[<System.Security.SecurityCritical>]
static member PtrToStringAuto : nativeint * int -> string
Public Shared Function PtrToStringAuto (ptr As IntPtr, len As Integer) As String

매개 변수

ptr
IntPtr

nativeint

유니코드 플랫폼의 경우 첫 번째 유니코드 문자의 주소입니다.

-또는-

ANSI 플랫폼의 경우 첫 번째 ANSI 문자의 주소입니다.

len
Int32

복사할 문자 수입니다.

반품

매개 변수 값이 아닌 ptr경우 네이티브 문자열의 복사본을 null 보유하는 관리되는 문자열이고, 그렇지 않으면 이 메서드가 반환됩니다null.

특성

예외

len가 0보다 작습니다.

설명

유니코드 플랫폼에서 이 메서드는 ANSI 플랫폼에서 호출PtrToStringUniPtrToStringAnsi합니다. 이러한 메서드를 호출하기 전에 변환이 수행되지 않습니다.

PtrToStringAuto 는 사용자 지정 마샬링 또는 관리 코드와 관리되지 않는 코드를 혼합할 때 유용합니다. 이 메서드는 관리되지 않는 문자열 내용의 복사본을 만들기 때문에 원래 문자열을 적절하게 해제해야 합니다. PtrToStringAuto 의 반대 기능을 Marshal.StringToCoTaskMemAutoMarshal.StringToHGlobalAuto제공합니다.

추가 정보

적용 대상