Marshal.StringToHGlobalUni(String) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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
nativeint
Yönetilmeyen bellekteki adres, kopyalandığı yere s
veya ise s
null
0.
- Ö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 kullanışlı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 tersini Marshal.PtrToStringUnisağlar.
Bu yöntem eklenmiş 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.