This documentation is archived and is not being maintained.

BStrWrapper Class

Marshals data of type VT_BSTR from managed to unmanaged code. This class cannot be inherited.

Namespace: System.Runtime.InteropServices
Assembly: mscorlib (in mscorlib.dll)

public sealed class BStrWrapper
/** @attribute SerializableAttribute() */ 
/** @attribute ComVisibleAttribute(true) */ 
public final class BStrWrapper
public final class BStrWrapper
Not applicable.

The BStrWrapper class controls how the wrapped object is marshaled when passed as VARIANT. You can wrap a String object in a BStrWrapper object to marshal it as VT_BSTR. BStrWrapper is useful when passing a null string to unmanaged code. Without BStrWrapper, a null string is passed as VT_EMPTY; however, wrapping the string with BStrWrapper ensures that the null string is passed as VT_BSTR.


Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0