佚名通过本文主要向大家介绍了activex控件下载,activex控件,activex控件被阻止,activex控件官方下载,activex控件下载安装等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: ### ActiveX控件返回字符串给调用者如下写法正确吗? ###
描述:
解决方案1:
描述:
ActiveX控件返回字符串给调用者如下写法正确吗? Str.AllocSysString()获取的内存一定会被调用者释放吗?还有什么其他办法没有?
谢谢!
void CYFCtrl::GetName(BSTR* Name)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
// TODO: 在此添加调度处理程序代码
CString Str;
Str = "My Name Is HaHa!"
* Name = Str.AllocSysString();
}
解决方案1:
调用者必须释放他,否则就内存泄漏了。BSTR就是BASIC字符串,跟C++中以零结尾的字符串不一样,可以让VB这样的非C++语言来调用
解决方案2:是不是COM都用BSTR啊?用WCHAR不就好了吗?
解决方案3:就是这样的. 你和调用者有这样的约定,你分配,他释放,就是这样的.
解决方案4:SysAllocString