Marshal.PtrToStringBSTR(IntPtr) Метод

Определение

Выделяет управляемый объект String и копирует в него двоичную строку (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 возможности метода .

Применяется к

См. также раздел