怎么用js调用C风格的ocx控件

怎样用js调用C风格的ocx控件?
最近在做一个B/S架构的项目,用到某硬件厂商的OCX组件,厂家提供的API中有这样一个:

/*************************************************************************/  
  10、 void vGetDPI(long* DPI_X, long* DPI_Y);    
/*************************************************************************/*    
函数名称:      vGetDPI  
*  功能描述:      获取 DPI  
*  输入参数:      无  
*  输出参数:      DPI_X                     横向 DPI           默认  96  
*                          DPI_Y        纵向 DPI           默认  96  
*  返回值:              无        
*/  

这应该是一个C风格的函数,传入地址指针,通过给指针指向的区域赋值来充当返回值。
可是js里面没有这样的东西啊,如果我传两个变量进去,浏览器会提示“类型不匹配”。
该怎么办?
ocx B/S C风格 指针 不兼容

------解决方案--------------------
在厂家提供的ocx之上在封装一个你自己的ActiveX,就可以随意按你自己的要求来做了
------解决方案--------------------
自己封装成控件,对外提供一个接口函数,在JS中调用即可,在网页中JS向控件传递参数可以使用BSTR类型
------解决方案--------------------
自己再用C++封装一下接口,生成一个ActiveX OCX,接口不用参数,只需返回一个字符串BSTR,如“100,100”
------解决方案--------------------
C风格的ocx控件 没有这样的说法,
只是可以使用C或C++编写OCX,编译后,OCX都要通过接口进行访问

你那个函数不是ocx的接口函数(接口函数一般都使用HRESULT类型作为返回值),因此无法直接用于浏览器
------解决方案--------------------
我想可以是ocx接口函数,但是能不能让其它语言调用是另外一回事了,让多语言调用就得用它们通用的参数类型,但如果是out retval类型的参数的话就行,当然这是返回值使用的,也只有一个
------解决方案--------------------
lz那个函数就是一个普通的函数,没有任何ocx的影子
------解决方案--------------------
引用:
Quote: 引用:

我想可以是ocx接口函数,但是能不能让其它语言调用是另外一回事了,让多语言调用就得用它们通用的参数类型,但如果是out retval类型的参数的话就行,当然这是返回值使用的,也只有一个

这么说它这样的API接口我就没办法在Web上调用了?可是ocx不是专为web开发的么?怎么会有这样的东西出现?



引用:
lz那个函数就是一个普通的函数,没有任何ocx的影子

怎么用js调用C风格的ocx控件

ocx并不是专门为web开发使用的,其也有封装,方便用户调用等意义
------解决方案--------------------
<script language="javascript">
function DetectActiveX()
 {
    try
    {
        myact= new ActiveXObject("组件.类");   
    }
    catch(e)
    {
       //alert("请在Internet Explorer 中启用ActiveX");
   return false;   
    }
//alert("创建成功");
       dpis =new Array(3);
myact.vGetDPI(dpi[1], dpi[2]);
    return true;
 }
看看,行不,要不整两个数组,传个名称进去