急Activex中返回字符串出错误

急!Activex中返回字符串出异常!
我用c++builder6.0写了一个ActiveX控件,GetResult()用于在返回字符串,在Web页面上调用成功,可以返回字符串,但在这个Web页面关闭时IE就会报异常,用ActiveX Control Test Container工具测试时也能看到返回字符串,但在关闭ActiveX Control Test Container时也报异常如下:
请高手指点,这是为什么? 能提供能正确返回字符串的代码也行,多谢了!
---------------------------
TSTCON32.EXE
---------------------------
Abnormal program termination
---------------------------
确定   
---------------------------



BSTR STDMETHODCALLTYPE TActFrmImpl::GetResult()
{
   anMsg= "这是控件返回的,收到就成功了!";
   anMsg.WideChar(bstr,anMsg.Length()+1);
   anMsg  =   AnsiString("BSTR:")+  bstr ;
   return bstr;
}
ActiveX 返回 字符串 错误

------解决方案--------------------
在哪里定义的
anMsg
bstr 
------解决方案--------------------
BSTR得用SysAllocString之类的方法生成。
------解决方案--------------------
bstr无需定义成全局,在GetResult函数中定义,然后按3楼说的,用SysAllocString方法开辟缓冲赋值,然后作为返回值返回就行了。