我用VC编写一个ActiveX控件,虽然最终成功了,但历程两个月的时间,最后还是存在好多问题,特别是在指针作为参数、VARIANT参数等问题。
请大家谈谈有关编写ActiveX控件时的经验,以免大家在以后的开发工作中再处处面壁。谢谢!其中有一个致命的问题,至今我仍无法解决,就是用VARIANT传递SAFFARRAY时,在BCB里不能正常接收,而VC、VB、Delphi下又可以?唉,这个问题问了十几个论坛,近百个人,都无一能解决!
请大家谈谈有关编写ActiveX控件时的经验,以免大家在以后的开发工作中再处处面壁。谢谢!其中有一个致命的问题,至今我仍无法解决,就是用VARIANT传递SAFFARRAY时,在BCB里不能正常接收,而VC、VB、Delphi下又可以?唉,这个问题问了十几个论坛,近百个人,都无一能解决!
容[in]SAFEARRAY array,并按Attribute…按钮,在Name中选择vararg。按确定后修改idl文
件在把[in]SAFEARRAY array改为[in]SAFEARRAY(VARIANT) array。然后再打开**Component.
h文件把该函数的参数SAFEARRAY array改为SAFEARRAY* array。再打开**Component.cpp文件
修改参数,在函数体内
使用COleSafeArray类实现该参数的控制,如“COleSafeArray SArray(array,VT_BSTR)”,
具体操作可查阅MSDN中的该类的成员函数。
为何VC,VB,Delphi调用通过,就BCB不行呢,怎么说BCB也可是说是VC与Delphi的中介呀!
也能用得不错。当不是特长。