2.2.5 BSTR
A BSTR is a pointer to a null-terminated character string in which the string length is stored with the string. This type is declared as follows:
-
typedef WCHAR* BSTR;
Because the length is stored with the string, BSTR variables can contain embedded null characters. For example:
-
[4 bytes (length prefix)], wchar_t[length], [\0]