
C++调用javascript函数,传值问题。
functionaddMarker(markelng,markelat){varpoint=newBMap.Point(markelng,markelat);varmar...
function addMarker(markelng,markelat)
{
var point = new BMap.Point(markelng,markelat);
var marker = new BMap.Marker(point);
map.addOverlay(marker);
}
// addMarker(116.417, 39.909);
以上是js脚本,用c++方式如何传值,传的值是经纬度坐标。
传其中一个值是没有问题,传两个值就不地了
memset(&Dispparams, 0, sizeof(Dispparams));
Dispparams.cArgs = 2;//参数个数
Dispparams.rgvarg = new VARIANT[Dispparams.cArgs];
Dispparams.cNamedArgs = 0;
Dispparams.rgvarg[0].dblVal = 104.072262;
Dispparams.rgvarg[0].vt = VT_R8;
Dispparams.rgvarg[1].dblVal = 30.663465;
Dispparams.rgvarg[1].vt = VT_R8;
spDisp->Invoke(Dispid,IID_NULL,0,DISPATCH_METHOD,&Dispparams,&vaResult,&excepInfo,&nArgErr); 展开
{
var point = new BMap.Point(markelng,markelat);
var marker = new BMap.Marker(point);
map.addOverlay(marker);
}
// addMarker(116.417, 39.909);
以上是js脚本,用c++方式如何传值,传的值是经纬度坐标。
传其中一个值是没有问题,传两个值就不地了
memset(&Dispparams, 0, sizeof(Dispparams));
Dispparams.cArgs = 2;//参数个数
Dispparams.rgvarg = new VARIANT[Dispparams.cArgs];
Dispparams.cNamedArgs = 0;
Dispparams.rgvarg[0].dblVal = 104.072262;
Dispparams.rgvarg[0].vt = VT_R8;
Dispparams.rgvarg[1].dblVal = 30.663465;
Dispparams.rgvarg[1].vt = VT_R8;
spDisp->Invoke(Dispid,IID_NULL,0,DISPATCH_METHOD,&Dispparams,&vaResult,&excepInfo,&nArgErr); 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询