问题描述
我目前正在使用 QTaxcontainer 在一个简单的主文件中使用 COM。
我有一个对象:
QAxObject *myComObj("the.Name");
当我成功访问一些简单的函数时,它被正确初始化:
myComObj->dynamicCall("easyFun()");
现在我有一个更复杂的方法来访问它需要一个BSTR,它在activeX端定义为:
[id(2)] void myfun(BSTR* arg1,short arg2,long arg3,BSTR* arg4,short arg5);
我尝试通过以下方式访问它:
myComObj->dynamicCall("myfun(BSTR*,short,long,BSTR*,short)",L"A string",12,13,1);
或
myComObj->dynamicCall("myfun(BSTR*,"A string",1);
或
myComObj->dynamicCall("myfun(const QString&,const QString&,1);
但我总是收到“参数 0 中的类型不匹配”错误。
知道如何将 BSTR 作为参数传递给 QAxBase::dynamicCall() 吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)