描述:
VC7.1写的ActiveX控件接口中:
[id(3), helpstring("method CheckUpdate")] HRESULT CheckUpdate([out] VARIANT* pvRE); //本来希望用int *,不过在javascript中找不到数据类型
STDMETHOD(CheckUpdate)(VARIANT*);
STDMETHODIMP CPosCtrl::CheckUpdate(VARIANT* pvRE)
{
CComVariant varRE;
varRE.Attach(pvRE);
varRE = (int)1;
varRE.Detach(pvRE);
return S_OK;
}
在JAVASCRIPT中我的调用方法:
<SCRIPT LANGUAGE="JAVASCRIPT">
function fun()
{
var i;
myClass.CheckUpdate(i);
alert(i);
}
</SCRIPT>
</HEAD>
<BODY>
<OBJECT classid="clsid:36FBEDEC-C279-483A-8601-C81339E05F13" id="myClass"></OBJECT>
.......
本希望在javascrpit中能获得返回值,但是每次调用myClass.CheckUpdate(i);后,i的值都是undefine.
请问该如何处理?
谢谢
解决方案1:
顺便问一下,我一起在vs2003中好像可以插入activex控件,现在忘记怎么插入了,请问lz是怎么插入的啊
解决方案2: HRESULT CheckUpdate([out,retval] VARIANT* pvRE1, ([out,retval] VARIANT* pvRE2);
请问,如果我需要返回两个值,这样写,可以在javascript中怎么得到呢?
谢谢,能不能这样设计?
对,应该是以返回值的方式取到数。
解决方案4:hdt(倦怠) 是正确的。
解决方案5:[id(3), helpstring("method CheckUpdate")] HRESULT CheckUpdate([out,retval] VARIANT* pvRE