Freigeben über


Marshal.StringToBSTR(String) Methode

Definition

Weist einen BSTR zu und kopiert den Inhalt eines verwalteten String hinein.

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

Parameter

s
String

Die zu kopierende verwaltete Zeichenfolge.

Gibt zurück

IntPtr

nativeint

Ein nicht verwalteter Zeiger auf das BSTR oder 0, wenn s NULL ist.

Attribute

Ausnahmen

Es ist nicht genügend Arbeitsspeicher verfügbar.

Die Länge für s liegt außerhalb des gültigen Bereichs.

Hinweise

StringToBSTR ist nützlich für benutzerdefiniertes Marshalling oder beim Mischen von verwaltetem und nicht verwaltetem Code. Da diese Methode den nicht verwalteten Arbeitsspeicher zuweist, der für eine Zeichenfolge erforderlich ist, geben Sie immer frei, wenn Sie fertig BSTR sind, indem Sie aufrufen Marshal.FreeBSTR. Diese Methode bietet die entgegengesetzte Funktionalität von Marshal.PtrToStringBSTR.

Gilt für:

Weitere Informationen