随笔 - 13, 文章 - 18, 评论 - 18, 引用 - 0
数据加载中……

BCG中安全使用_variant_t 变量

    今天遇到一个_variant_t 变量不能成功转换的BUG,COM组件版本不同会对此有影响。 
    char szContent[]={0};
    CBCGPGridRow *pRow = m_wndGrid.GetRow(nIndex);
    if(pRow)
         strcpy(szContent, (_bstr_t)pRow->GetItem(0)->GetValue() ); 
                                           // pRow->GetItem(0)->GetValue() 返回const _variant_t &   这段代码在我机器上无任何问题。


 后来发现,  (_bstr_t)pRow->GetItem(0)->GetValue()  转换有问题。 
   改为  _variant_t var =   pRow->GetItem(0)->GetValue() ;
   strcpy(szContent,  _com_util::ConvertBSTRToString(var.bstrVal));
   OK.

posted on 2007-01-12 01:40 JackLi 阅读(467) 评论(0)  编辑 收藏 引用 所属分类: Programming Tips


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理