如何将_bstr_t转换成CComBSTR对象?我查找MSDN发现有两个方法,但不知道哪个是正确和高效的
方法一:_bstr_t bstr = "test";
CComBSTR tar= bstr.GetBSTR();
方法二:_bstr_t bstr = "test";
CComBSTR tar;
tar.Attach(bstr.copy());
谢谢各位达人解答
方法一:_bstr_t bstr = "test";
CComBSTR tar= bstr.GetBSTR();
方法二:_bstr_t bstr = "test";
CComBSTR tar;
tar.Attach(bstr.copy());
谢谢各位达人解答
解决方案 »
- 再次提问,RichEdit插入图片后内存释放问题
- 如何获取头一天日期
- 如何根据左侧点击树节点的不同,在右侧加载不同的对话框?
- 一个菜问题
- MFC?COM?.NET?STL?ATL?Delphi?Win32?嵌入式?linux?wince?开源?
- 请问下面的代码怎样解释
- 请高手现身呀.
- 向文件test写入十个int型数据(值均为10即0xA)为何在每个数据前多了个0xD?
- 请教关于浏览路径对话框该怎样创建,在<<如何调用浏览路径对话框 ShowMan(原作)>>中 BROWSEINFO bi; ITEMIDLIST*pidl是什么啊!!!
- 我想知道:一个程序被载入启动时,另一个程序能否被动地收到某种消息?
- VC6中有没有比较好的绘图控件,自己编的类也行
- 怎么将串口采集数据存入ACCESS数据库
{
if (m_Data == NULL) {
m_Data = new Data_t(0, FALSE);
if (m_Data == NULL) {
_com_issue_error(E_OUTOFMEMORY);
}
}
return m_Data->GetWString();
}inline wchar_t*& _bstr_t::Data_t::GetWString() throw()
{
return m_wstr;
}inline BSTR _bstr_t::Data_t::Copy() const
{
if (m_wstr != NULL) {
BSTR bstr = ::SysAllocStringByteLen(reinterpret_cast<char*>(m_wstr), ::SysStringByteLen(m_wstr)); if (bstr == NULL) {
_com_issue_error(E_OUTOFMEMORY);
} return bstr;
} return NULL;
}两个都行.