Aracılığıyla paylaş


Marshal.PtrToStringAuto Yöntem

Tanım

Yönetilen String bir dizeyi ayırır ve yönetilmeyen bir dizenin tamamını veya bir bölümünü içine kopyalar.

Aşırı Yüklemeler

PtrToStringAuto(IntPtr)

Yönetilen String bir ayırır ve yönetilmeyen bellekte depolanan bir dizeden ilk null karaktere kadar olan tüm karakterleri bu karaktere kopyalar.

PtrToStringAuto(IntPtr, Int32)

Yönetilen String bir ayırır ve yönetilmeyen bellekte depolanan bir dizeden belirtilen sayıda karakteri bu dizeye kopyalar.

PtrToStringAuto(IntPtr)

Kaynak:
Marshal.Unix.cs
Kaynak:
Marshal.Unix.cs
Kaynak:
Marshal.Unix.cs

Yönetilen String bir ayırır ve yönetilmeyen bellekte depolanan bir dizeden ilk null karaktere kadar olan tüm karakterleri bu karaktere kopyalar.

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

Parametreler

ptr
IntPtr

nativeint

Unicode platformları için, ilk Unicode karakterinin adresi.

-veya-

ANSI platformları için, ilk ANSI karakterinin adresi.

Döndürülenler

parametresinin değeri ptr değilse nullyönetilmeyen dizenin bir kopyasını tutan yönetilen dize; aksi takdirde, bu yöntem döndürür null.

Öznitelikler

Açıklamalar

Geçerli platform Unicode ise, her ANSI karakteri bir Unicode karakterine genişletilir ve bu yöntem öğesini çağırır PtrToStringUni. Aksi takdirde, bu yöntem öğesini çağırır PtrToStringAnsi.

PtrToStringAuto özel hazırlama için veya yönetilen ve yönetilmeyen kodu karıştırırken kullanışlıdır. Bu yöntem yönetilmeyen dizenin içeriğinin bir kopyasını oluşturduğundan, özgün dizeyi uygun şekilde boşaltmanız gerekir. PtrToStringAutove Marshal.StringToHGlobalAuto yöntemlerinin karşıt işlevselliğini Marshal.StringToCoTaskMemAuto sağlar.

Ayrıca bkz.

Şunlara uygulanır

PtrToStringAuto(IntPtr, Int32)

Kaynak:
Marshal.Unix.cs
Kaynak:
Marshal.Unix.cs
Kaynak:
Marshal.Unix.cs

Yönetilen String bir ayırır ve yönetilmeyen bellekte depolanan bir dizeden belirtilen sayıda karakteri bu dizeye kopyalar.

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

Parametreler

ptr
IntPtr

nativeint

Unicode platformları için, ilk Unicode karakterinin adresi.

-veya-

ANSI platformları için, ilk ANSI karakterinin adresi.

len
Int32

Kopyalanacak karakter sayısı.

Döndürülenler

Parametresinin değeri ptr değilse null, yerel dizenin bir kopyasını tutan yönetilen bir dize; aksi takdirde, bu yöntem döndürür null.

Öznitelikler

Özel durumlar

len, sıfırdan küçüktür.

Açıklamalar

Unicode platformlarında bu yöntem öğesini çağırır PtrToStringUni; ANSI platformlarında öğesini çağırır PtrToStringAnsi. Bu yöntemler çağrılmadan önce dönüştürme yapılmaz.

PtrToStringAuto özel hazırlama için veya yönetilen ve yönetilmeyen kodu karıştırırken kullanışlıdır. Bu yöntem yönetilmeyen dizenin içeriğinin bir kopyasını oluşturduğundan, özgün dizeyi uygun şekilde boşaltmanız gerekir. PtrToStringAutove Marshal.StringToHGlobalAutoişlevlerinin tersini Marshal.StringToCoTaskMemAuto sağlar.

Ayrıca bkz.

Şunlara uygulanır