读书人

关于ActiveX接收字符串的有关问题在

发布时间: 2012-03-06 20:47:55 作者: rapoo

关于ActiveX接收字符串的问题,在线跪等
rt,我用bcb6封装了一个继承自TPanel的控件。现在其他的功能都调通了,就是有一个要戒收字符串的函数搞不定。

比如说,我在默认接口里加入了一个HRESLULT f([in]BSTR b1,[in]long l2,[out,retval]long* l3);用BCB导入OCX后,这个方法对应为 long f(LPSTR,long)型。
但是我调用时出现内存错误。哪么我应该怎样调用才能避免错误呢?

我想问一下这种情怎样处理?怎样才能让的方法的为LPSTR?LPCTSTR呢?


ps:bcb的类型库编辑器是不是有问题啊?怎么我以refresh类型库的改动,机器就生成的代码就变得乱七八糟的?

[解决办法]
BSTR这种对象需要你自己创建和释放

创建一个BSTR
BSTR SysAllocString(
OLECHAR FAR* sz
);

必须通过调用 FreeBSTR 或 SysFreeString 释放

读书人网 >C++ Builder

热点推荐