Здравствуйте, Аноним, Вы писали:
А>Если Вы посмотрите на то, как реализованы строки BSTR в C++, то увидите, что они представляют собой 4-х байтные указатели на строки 2-х байтных символов, завершающиеся 0x0000. В C++ НИКАКИХ счетчиков нет. Насколько я понимаю, они могут подсчитываться и передаваться при маршалинге. Поэтому ничего удивительного в тексте MFC нет.
Не очень понятно о чем это вы.
Отправлять WSTR туда, где ожидаеся BSTR — нельзя. Во-первых из-за возможного маршалинга именно как BSTR, во-вторых, клиент просто может вызвать что-нибудь BSTR-специфичное, вроде SysStringLen — и до свидания, ваша программа.