如何将CComBSTR的变量转化成CString变量或lpsz变量 用VectorFromBstr( BSTR bstr,SAFEARRAY FAR* FAR* ppsa)函数将BSTR转换为SafeArray类,再用该类的getString函数取出指定的字符串。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 有两个函数MultiByteToWideChar()和WideCharToMultiByte()可以进行转换,具体用法可以看MSDN。同时,有两个函数AnsiToUnicode()和UnicodeToAnsi也可以转换字符串,这两个函数可以看Q138813这篇文章 Convert char * to BSTRString *resultWord;*resultWord = _com_util::ConvertStringToBSTR(m_Data[i].wordForLang2);Convert BSTR to char *char *pFileName = _com_util::ConvertBSTRToString(filename); 呵呵,自己编写一个函数来处理:void inline BR_TO_CSTRING( BSTR bst,CString& cst){ DWORD len=*((DWORD*)bst-1); for(UINT i=0;i<len;i+=2) cst+=*(char*)((BYTE*)bst+i);} 关于程序兼容不同Windos操作系统的问题 关于char 字符串结尾的问题。 窗口问题 如何在VC里新建空白文档 大家推荐一些免费的界面开发控件,像ActiveSkin这样的 关于曲线的绘制和存储问题? 编辑框多行显示的问题 为什么我从网页上粘贴到vc中来,vc就不认识(具体在里面) 如何实时监控微博更新? Socket:AsyncSelect()何时调用? BSTR->*char为何转换后只有1个字符? 问BSTR与CSTRING之间的转换.另外--查询窗口不灵!
String *resultWord;
*resultWord = _com_util::ConvertStringToBSTR(m_Data[i].wordForLang2);
Convert BSTR to char *
char *pFileName = _com_util::ConvertBSTRToString(filename);
void inline BR_TO_CSTRING( BSTR bst,CString& cst)
{
DWORD len=*((DWORD*)bst-1);
for(UINT i=0;i<len;i+=2)
cst+=*(char*)((BYTE*)bst+i);
}