共用方式為


Marshal.PtrToStringUni 方法

定義

配置 Managed String,並將 Unmanaged Unicode 字串的全部或部分複製到其中。

多載

PtrToStringUni(IntPtr)

配置 Managed String,並從 Unmanaged Unicode 字串將直到第一個 Null 字元的所有字元複製到其中。

PtrToStringUni(IntPtr, Int32)

配置 Managed String,並從 Unmanaged Unicode 字串將指定數目的字元複製到其中。

PtrToStringUni(IntPtr)

來源:
Marshal.cs
來源:
Marshal.cs
來源:
Marshal.cs

配置 Managed String,並從 Unmanaged Unicode 字串將直到第一個 Null 字元的所有字元複製到其中。

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

參數

ptr
IntPtr

nativeint

Unmanaged 字串第一個字元的位址。

傳回

如果 ptr 參數的值不是 null,則為包含 Unmanaged 字串複本的 Managed 字串,否則這個方法會傳回 null

屬性

備註

PtrToStringUni 適用於自定義封送處理,或在混合 Managed 和 Unmanaged 程式代碼時使用。 因為這個方法會建立 Unmanaged 字串內容的複本,所以您必須適當地釋放原始字串。 這個方法提供和 Marshal.StringToHGlobalUni 方法的Marshal.StringToCoTaskMemUni相反功能。

此 API 反映 Unicode 的 Windows 定義,這是 UTF-16 2 位元組編碼。 在許多非 Windows 平臺上, wchar_t 數據類型為 4 位元組,而不是 2 位元組。 請洽詢您的編譯程式,以確認是否可以 wchar_t 使用或 char16_t 改用。

另請參閱

適用於

PtrToStringUni(IntPtr, Int32)

來源:
Marshal.cs
來源:
Marshal.cs
來源:
Marshal.cs

配置 Managed String,並從 Unmanaged Unicode 字串將指定數目的字元複製到其中。

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

參數

ptr
IntPtr

nativeint

Unmanaged 字串第一個字元的位址。

len
Int32

要複製的 Unicode 字元數。

傳回

如果 ptr 參數的值不是 null,則為包含 Unmanaged 字串複本的 Managed 字串,否則這個方法會傳回 null

屬性

備註

PtrToStringUni 適用於自定義封送處理,或在混合 Managed 和 Unmanaged 程式代碼時使用。 因為這個方法會建立 Unmanaged 字串內容的複本,所以您必須適當地釋放原始字串。 這個方法提供和 Marshal.StringToHGlobalUni 方法的Marshal.StringToCoTaskMemUni相反功能。

此 API 反映 Unicode 的 Windows 定義,這是 UTF-16 2 位元組編碼。 在許多非 Windows 平臺上, wchar_t 數據類型為 4 位元組,而不是 2 位元組。 請洽詢您的編譯程式,以確認是否可以 wchar_t 使用或 char16_t 改用。

另請參閱

適用於