通过


Marshal.PtrToStringBSTR(IntPtr) 方法

定义

将存储在非托管内存中的托管二进制字符串 (BSTR) 分配给其中。

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

参数

ptr
IntPtr

nativeint

非托管字符串的第一个字符的地址。

返回

一个托管字符串,用于保存非托管字符串的副本。

属性

例外

ptr 等于 Zero

注解

仅对使用非托管 SysAllocString 和 SysAllocStringLen 函数分配的字符串调用此方法。

PtrToStringBSTR 对于自定义封送处理或在混合托管和非托管代码时非常有用。 由于此方法创建非托管字符串内容的副本,因此必须根据需要释放原始字符串。 此方法提供该方法的 Marshal.StringToBSTR 相反功能。

适用于

另请参阅