[id(13), helpstring("method SetMacNO")] HRESULT SetMacNO(BYTE port,unsigned short MacNO, unsigned short NewMac,int * bRS); 
这个是OCX里的声明 <object classid="clsid:698A90C5-F861-4E51-ABE0-3E0350E2E137" width="0" height="0" id="CHMAC"> 
</object> 
<script language=javascript> 
var jg; 
function jh(){  CHMAC.SetMacNO(1, Number(document.form1.jh1.value), Number(document.form1.jh2.value),jg);   alert(jg);   switch(jg) {    case 1:alert('成功');break;   case -1:alert('打开串口失败');break;   case  -2:alert('发信息失败');break;   case -3: alert('读信息失败');break;   case -9:alert('验证失败');break; 
  default:alert('打开串口失败');break; 

} </script> 
这个是script 问题: 
在delphi和vb啊这些软件中一切正常,当中script中时,执行正常,但是那个返回值是失败的int * bRS,在C++中是指针型的,难道javascript中不支持这种类型,读不到数据? 
现在的执行读的结束值是undefined另在
http://topic.csdn.net/u/20080507/14/22c00f1d-9c0b-4af4-b8a0-873e95c2af3a.html
中eglic 说要初始化
初始化了还是不行,初始化的多少得到的就是多少 
在vb里是可以,是一个朋友搞的,能搞通,但是int * bRS要强制转换成long才可以,不然在vb里都不行,但是javascript把int改成long的不能转,所以停在这里了,并且我已经把int *改成ocx里的long * 结果还是一样,不行