Marshal.PtrToStringAuto Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mengalokasikan terkelola String dan menyalin semua atau sebagian string yang tidak dikelola ke dalamnya.
Overload
PtrToStringAuto(IntPtr) |
Mengalokasikan karakter String terkelola dan menyalin semua karakter hingga karakter null pertama dari string yang disimpan dalam memori yang tidak dikelola ke dalamnya. |
PtrToStringAuto(IntPtr, Int32) |
Mengalokasikan terkelola String dan menyalin jumlah karakter yang ditentukan dari string yang disimpan dalam memori yang tidak dikelola ke dalamnya. |
PtrToStringAuto(IntPtr)
- Sumber:
- Marshal.Unix.cs
- Sumber:
- Marshal.Unix.cs
- Sumber:
- Marshal.Unix.cs
Mengalokasikan karakter String terkelola dan menyalin semua karakter hingga karakter null pertama dari string yang disimpan dalam memori yang tidak dikelola ke dalamnya.
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
Parameter
- ptr
-
IntPtr
nativeint
Untuk platform Unicode, alamat karakter Unicode pertama.
-atau-
Untuk platform ANSI, alamat karakter ANSI pertama.
Mengembalikan
String terkelola yang menyimpan salinan string yang tidak dikelola jika nilai ptr
parameter tidak ; jika tidak null
, metode ini mengembalikan null
.
- Atribut
Keterangan
Jika platform saat ini adalah Unicode, setiap karakter ANSI dilebarkan ke karakter Unicode dan metode ini memanggil PtrToStringUni. Jika tidak, metode ini memanggil PtrToStringAnsi.
PtrToStringAuto berguna untuk marshaling kustom atau saat mencampur kode yang dikelola dan tidak dikelola. Karena metode ini membuat salinan konten string yang tidak dikelola, Anda harus membebaskan string asli yang sesuai. PtrToStringAuto menyediakan fungsionalitas yang berlawanan dari Marshal.StringToCoTaskMemAuto metode dan Marshal.StringToHGlobalAuto .
Lihat juga
- StringToCoTaskMemAuto(String)
- StringToHGlobalAuto(String)
- PtrToStringUni(IntPtr, Int32)
- PtrToStringAnsi(IntPtr)
Berlaku untuk
PtrToStringAuto(IntPtr, Int32)
- Sumber:
- Marshal.Unix.cs
- Sumber:
- Marshal.Unix.cs
- Sumber:
- Marshal.Unix.cs
Mengalokasikan terkelola String dan menyalin jumlah karakter yang ditentukan dari string yang disimpan dalam memori yang tidak dikelola ke dalamnya.
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
Parameter
- ptr
-
IntPtr
nativeint
Untuk platform Unicode, alamat karakter Unicode pertama.
-atau-
Untuk platform ANSI, alamat karakter ANSI pertama.
- len
- Int32
Jumlah karakter yang akan disalin.
Mengembalikan
String terkelola yang menyimpan salinan string asli jika nilai ptr
parameter tidak ; jika tidak null
, metode ini mengembalikan null
.
- Atribut
Pengecualian
len
kurang dari nol.
Keterangan
Pada platform Unicode, metode ini memanggil PtrToStringUni; pada platform ANSI, ia memanggil PtrToStringAnsi. Tidak ada transformasi yang dilakukan sebelum metode ini dipanggil.
PtrToStringAuto berguna untuk marshaling kustom atau saat mencampur kode yang dikelola dan tidak dikelola. Karena metode ini membuat salinan konten string yang tidak dikelola, Anda harus membebaskan string asli yang sesuai. PtrToStringAutomenyediakan fungsionalitas dan Marshal.StringToHGlobalAutoyang berlawananMarshal.StringToCoTaskMemAuto.
Lihat juga
- StringToCoTaskMemAuto(String)
- StringToHGlobalAuto(String)
- PtrToStringUni(IntPtr, Int32)
- PtrToStringAnsi(IntPtr)