用VBScript调用ActiveX控件中指针类型参数不成功?解决办法
用VBScript调用ActiveX控件中指针类型参数不成功?
IDL中定义为:
[id(14), helpstring( "method TestPLong ")] LONG TestPLong([out]LONG* pPara);
.h文件中定义为:
LONG TestPLong(LONG* pPara);
.cpp文件中定义为:
LONG CEEyesStatusCtrl::TestPLong(LONG* pPara)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
// TODO: Add your dispatch handler code here
*pPara *= 2;
return 0;
}
HTML文件为:
<script language=vbscript>
<!--
sub TestPLong()
StatusOcx.TestPLong longPara
resultShow.value = CStr(longPara)
end sub
-->
</script>
结果html中调用此函数时,出现错误: 类型不匹配
这种指针类型的参数如何在VBS或JS中使用?
------解决方案--------------------
参数用VARIANT
------解决方案--------------------
无法使用
javascript不支持传引用
你可以传返回值
IDL中定义为:
[id(14), helpstring( "method TestPLong ")] LONG TestPLong([out]LONG* pPara);
.h文件中定义为:
LONG TestPLong(LONG* pPara);
.cpp文件中定义为:
LONG CEEyesStatusCtrl::TestPLong(LONG* pPara)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
// TODO: Add your dispatch handler code here
*pPara *= 2;
return 0;
}
HTML文件为:
<script language=vbscript>
<!--
sub TestPLong()
StatusOcx.TestPLong longPara
resultShow.value = CStr(longPara)
end sub
-->
</script>
结果html中调用此函数时,出现错误: 类型不匹配
这种指针类型的参数如何在VBS或JS中使用?
------解决方案--------------------
参数用VARIANT
------解决方案--------------------
无法使用
javascript不支持传引用
你可以传返回值