Marshal.SecureStringToBSTR(SecureString) Method
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Important
This API is not CLS-compliant.
Allocates an unmanaged binary string (BSTR) and copies the contents of a managed SecureString object into it.
public:
static IntPtr SecureStringToBSTR(System::Security::SecureString ^ s);
public static IntPtr SecureStringToBSTR(System.Security.SecureString s);
[System.CLSCompliant(false)]
public static IntPtr SecureStringToBSTR(System.Security.SecureString s);
[System.Security.SecurityCritical]
public static IntPtr SecureStringToBSTR(System.Security.SecureString s);
static member SecureStringToBSTR : System.Security.SecureString -> nativeint
[<System.CLSCompliant(false)>]
static member SecureStringToBSTR : System.Security.SecureString -> nativeint
[<System.Security.SecurityCritical>]
static member SecureStringToBSTR : System.Security.SecureString -> nativeint
Public Shared Function SecureStringToBSTR (s As SecureString) As IntPtr
The managed object to copy.
nativeint
The address, in unmanaged memory, where the s
parameter was copied to, or 0 if a null object was supplied.
- Attributes
The s
parameter is null
.
There is insufficient memory available.
The SecureStringToBSTR method is useful for custom marshaling or when mixing managed and unmanaged code. Because this method allocates the unmanaged memory required for a string, always free the BSTR
when finished by calling the ZeroFreeBSTR method.
Product | Versions |
---|---|
.NET | Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 |
.NET Framework | 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 2.0, 2.1 |
.NET feedback
.NET is an open source project. Select a link to provide feedback: