Aracılığıyla paylaş


Marshal.StringToHGlobalUni(String) Yöntem

Tanım

Yönetilen String bir dosyanın içeriğini yönetilmeyen belleğe kopyalar.

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

Parametreler

s
String

Kopyalanacak yönetilen dize.

Döndürülenler

IntPtr

nativeint

Yönetilmeyen bellekteki adresi, kopyalandığı yere s veya 0 ise s 0 değerini alır null.

Öznitelikler

Özel durumlar

yöntemi yeterli yerel yığın belleği ayıramadı.

parametresi, s işletim sisteminin izin verdiği uzunluk üst sınırını aşıyor.

Açıklamalar

StringToHGlobalUni özel hazırlama için veya yönetilen ve yönetilmeyen kodu karıştırırken kullanmak için yararlıdır. Bu yöntem bir dize için gereken yönetilmeyen belleği ayırdığından, çağırarak FreeHGlobalbelleği her zaman boşaltın. Bu yöntem, işlevinin tam tersini Marshal.PtrToStringUnisağlar.

Bu yöntem, katıştırılmış null karakterleri kopyalar ve sonlandırıcı bir null karakter içerir.

Bu API, UTF-16 2 bayt kodlaması olan Unicode'un Windows tanımını yansıtır. Windows olmayan birçok platformda wchar_t , veri türü 2 bayt değil 4 bayttır. Bunun yerine kullanılıp kullanılamayabileceğini veya char16_t kullanılması gerektiğini onaylamak wchar_t için derleyicinize başvurun.

Şunlara uygulanır

Ayrıca bkz.