Ниже приведен пример, демонстирующий, как можно скопировать данные из строки типа BSTR (полученной, например, после вызова метода COM-объекта, возвращающего строку) в строку типа wchar_t*:
UINT length = SysStringLen(myBstr); // определяем длину BSTR
wchar_t *myString = new wchar_t[lenght+1]; // используем "+1" т.к. SysStringLen не учел nul в конце строки
wcscpy_s(myString ,wcslen(myString ), myBstr); // копируем, используя безопасную wcscpy_s вместо wcscpy, помеченной как "deprecated"
SysFreeString(myBstr); // скопированную уже BSTR-строку теперь можно корректно удалить
Комментариев нет:
Отправить комментарий