VC和JS交互返回字符串,麻烦帮忙看看我的代码有没有内存泄露的问题

Solozi 2013-05-13 11:30:34

DISP_FUNCTION(CWebControl, "ResDataTest", ResDataTest, VT_VARIANT ,VTS_NONE ) //消息映射

VARIANT CWebControl::ResDataTest( )
{
_bstr_t bstr = szBuf; //ansi字符串BUF,定义略
_variant_t vt;
vt.vt=VT_BSTR;
vt.pbstrVal = (BSTR *)bstr.Detach();
return vt.Detach();
}


代码如上,CHtmlView的扩展类,返回字符串给JS,因第一次弄基于COM的东西,不清楚以上写法有没有内存泄漏的问题?
另外,这种返回字符串给JS的写法还有没有更简单的做法,能否不用_variant_t 直接返回BSTR呢,
如果能的话那消息映射那怎么用什么返回类型,函数返回类型用啥?
以上共两个问题,望都能指点一二,不胜感激
...全文
50 点赞 收藏 2
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
oyljerry 2013-05-27
Detach做了拷贝,所以应该不会泄露
回复
世纪殇 2013-05-27
我也想学,顶一下吧
回复
相关推荐
发帖
ATL
创建于2007-09-28

3215

社区成员

ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
申请成为版主
帖子事件
创建了帖子
2013-05-13 11:30
社区公告
暂无公告