devxlogo

The Difference Between BSTR and Unicode Strings

The Difference Between BSTR and Unicode Strings

Though each character of BSTR and Unicode strings are 2 characters wide, there is a fundamental difference between the two.

BSTR strings have to be length prefixed, which means that the memory locations at the very beginning of the string contain the length of the string. BSTRs also have to be created using SysAllocString and SysFreeString.

If you pass a simple unicode (wchar) string as an argument to a COM function expecting a BSTR, it will fail.

devx-admin

Share the Post: