佚名通过本文主要向大家介绍了activex控件下载xp,activex控件下载,activex控件,activex控件被阻止,activex等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: ActiveX中怎么通过参数返回数据?
描述:
解决方案1:
描述:
这样可以吗?
short CClientCtrl::Test(LPCTSTR a, BSTR FAR* b)
{
// TODO: Add your dispatch handler code here
b= SysAllocString((OLECHAR*)a);
return 0;
}
谢谢
解决方案1:
在你的接口定义里,应当是这样的形式Test([in]BSTR a, [out]BSTR* b)
实现也是这样HRESULT CClientCtrl::Test(BSTR a, BSTR * b)
不要用LPCTSTR ,它与BSTR不一样
你负责分配没错,释放是别人的事
最好自己在客户端测试!改成:
short CClientCtrl::Test(LPCTSTR a, BSTR FAR* b)
{
// TODO: Add your dispatch handler code here
_bstr_t str(a);
b= str.Copy();
return 0;
}
就是MFC向导生成的代码会自动做LPCTSTR到BSTR这样的转换,不用担心。