Этот метод распределяет новую Automation -cовместимую строку типа BSTR и копирует содержание объекта CString в нее, включая символ конца строки. Метод порождает исключение CMemoryException , если недостаточно памяти. Этот метод обычно используется, чтобы возвратить строки для Automation.
BSTR AllocSysString ( )
const;
BSTR только чтораспределенной строки.
В некоторых случаях клиент, получающий возвращенную строку не освобождает память строки. Вы можете освобождать ее непосредственно, используя ::SysFreeString.
Вы должны сослаться к OLECE300D.LIB, чтобы пользоваться этой функцией, если Вы используете MFC в общедоступной библиотеке и работаете в режиме отладки. Вы можете заставить компоновщик связываться OLECE300D.LIB автоматическим включением <Afxdisp.h> в ваш Stdafx.h файл.
Если Вы используете этот метод, убедитесь, что включили <afxdisp.h> в ваш stdafx.h файл, чтобы гарантировать безошибочную dll компоновку.
Для получения дополнительной информации о функциях распределения OLE в Windows CE, см. :: SysAllocString.
CString str ("Хоккей является Лучшим спортом! ");
BSTR bstr = str.AllocSysString();
/* bstr теперь содержит "Хоккей, является лучшим спортом", и можно передать в любую функцию OLE, требующую BSTR. Обычно, функция, получающая BSTR освободный строку после использования./*
:: SysAlloCString, :: SysFreeString, CMemoryException