Marshal.StringToCoTaskMemUTF8(String) 方法

定義

複製 Managed String 的內容到從 Unmanaged COM 工作配置器配置的記憶體區塊。

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

參數

s
String

要複製的 Managed 字串。

傳回

IntPtr

nativeint

整數,表示配置給字串的記憶體區塊指標,如果 snull 則為 0。

屬性

例外狀況

s 參數超過作業系統所允許的最大長度。

可用的記憶體不足。

備註

StringToCoTaskMemUTF8 適用于自訂封送處理,或在混合 Managed 和 Unmanaged 程式碼時使用。 由於這個方法會配置字串所需的 Unmanaged 記憶體,包括 Null 結束字元,因此呼叫 一律釋放記憶體 Marshal.FreeCoTaskMem 。 這個方法提供 的相反功能 Marshal.PtrToStringUTF8 。 字串的字元會以 UTF-8 字元的形式複製。

適用於

另請參閱