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 .