VC中的代码:STDMETHODIMP CPolyCtl::QM_AppendVectorModel(IDispatch *pObj, BOOL* pSuccess)
{
// TODO: 在此添加实现代码
*pSuccess=TRUE;
return S_OK;
}STDMETHODIMP CPolyCtl::QM_CreateObject(BSTR objName, IDispatch** pIDispatch)
{
// TODO: 在此添加实现代码
*pIDispatch = 0;
*pIDispatch = CreateDispatch(objName);
return S_OK;
}
JS中的代码:function TestDis1()
{
var objLine = document.getElementById("PolyCtl").QM_CreateObject("PolyLib.PolyI");
var t = objLine.GetItem();
alert(t);
var i= PolyCtl.QM_AppendVectorModel(objLine);
alert(i);
}
原理是调用PolyCtl对象中的QM_CreateObject创建PolyI实例objLine。
然后将objLine传入QM_AppendVectorModel使用。
问题出在QM_AppendVectorModel,这里firefox报错,IE正常。我将原文件传到网盘了,请各位大侠帮帮我。
firefox插件
http://115.com/file/e7iizvaj#ffactivex-setup-r39.exe
//PolyCtl和PolyLib的代码
http://115.com/file/e7iizvsy#代码.zip
//在firefox中运行的javascript代码
http://115.com/file/c2kkdqwz# PolyCtl-FireFox.htm
//在IE中运行的javascript代码
http://115.com/file/bejj8iek# PolyCtl-IE.htm