Marshal.StringToCoTaskMemUTF8(String) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
複製 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
整數,表示配置給字串的記憶體區塊指標,如果 s
為 null
則為 0。
- 屬性
例外狀況
s
參數超過作業系統所允許的最大長度。
可用的記憶體不足。
備註
StringToCoTaskMemUTF8 適用於自定義封送處理,或在混合 Managed 和 Unmanaged 程式代碼時使用。 因為這個方法會配置字串所需的 Unmanaged 記憶體,包括 Null 終止符,所以一律會呼叫 Marshal.FreeCoTaskMem來釋放記憶體。 這個方法提供的 Marshal.PtrToStringUTF8相反功能。 字串的字元會複製為UTF-8個字元。