wchar_t *
을 BSTR
으로 변환하려고합니다.C++ : wchar_t *를 BSTR로 변환 하시겠습니까?
#include <iostream>
#include <atlstr.h>
using namespace std;
int main()
{
wchar_t* pwsz = L"foo";
BSTR bstr(pwsz);
cout << SysStringLen(bstr) << endl;
getchar();
}
이것은 내가 기대했던 것보다 작은, 0
를 인쇄합니다. 이 변환을 수행하는 올바른 방법은 무엇입니까?
'CString' ('.AllocSysString()')에서'BSTR'을 할당하는 방법이 있지만'CString'은'BSTR'을 감싸지 않습니다. 그러나'CString'은 자동적으로'BSTR'을 해제하는 데 도움이되지 않습니다. –
의미에서 그것은 OP가 원했던 BSTR로 변환 할 수있는 기능을 포함하고 있지만 기술적으로는 올바른 단어의 선택이 맞지 않습니다. –