JS调用ocx式com组件,com组件的fun1函数参数为long*,如何调用该函数?

airwolf1216 2013-03-06 04:19:36
最近开发com组件,具体为activex。上层demo用js嵌入网页中。


已经实现了用js调用com组件的大多数方法和事件,但是com组件有一个方法long fun1(long*)

就这个方法,我就是调用不起来。

传统的方法,带指针的,像long fun2(LPCTSTR*)这种的。倒是在js中可以这样写:

var a=new Array();
o.fun2(a);

但是对于long fun1(long*)这种的不行。

请问我该怎么调用long fun1(long*)?
...全文
206 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
airwolf1216 2013-03-07
  • 打赏
  • 举报
回复
我试过 不好用 不过我想到了其他方法 还是谢谢各位了
fishion 2013-03-07
  • 打赏
  • 举报
回复
得自己填写in out reval等类型参数
airwolf1216 2013-03-07
  • 打赏
  • 举报
回复
晕 我在添加方法的时候从没有in、out这种东西让我选或者让我写的 我用的vc6
MoXiaoRab 2013-03-06
  • 打赏
  • 举报
回复
返回数据就是 akirya 这么写。
  • 打赏
  • 举报
回复
引用 3 楼 airwolf1216 的回复:
引用 1 楼 akirya 的回复:idl中 如果是 C/C++ code?1long func1( [out,retval]long*); 那么 js这么调用 JavaScript code?1var i = o.fun2(); 真心没看懂akirya 的写法,不需要没带参数吗? 其实我是想让func1的这个long指针返回数据的…… 另外,我写的是……
activex也一样,只不过扩展名改为odl了。 返回数据必须用[out,retval]这种方法,否则js无法使用。
airwolf1216 2013-03-06
  • 打赏
  • 举报
回复
引用 1 楼 akirya 的回复:
idl中 如果是 C/C++ code?1long func1( [out,retval]long*); 那么 js这么调用 JavaScript code?1var i = o.fun2();
真心没看懂akirya 的写法,不需要没带参数吗? 其实我是想让func1的这个long指针返回数据的…… 另外,我写的是mfc的acitvex,不是atl,没有in和out这种分别
  • 打赏
  • 举报
回复
引用 1 楼 akirya 的回复:
idl中 如果是 C/C++ code?1long func1( [out,retval]long*); 那么 js这么调用 JavaScript code?1var i = o.fun2();
idl中写的错了
HRESULT func1( [out,retval]long*);
  • 打赏
  • 举报
回复
idl中 如果是
long func1( [out,retval]long*);
那么 js这么调用
var i = o.fun2();

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧