关于javascript数组与VB DLL中中数组的传递问题

向成功发展

向成功发展

2016-02-19 16:54

下面是个简单易学的关于javascript数组与VB DLL中中数组的传递问题教程,图老师小编详细图解介绍包你轻松学会,喜欢的朋友赶紧get起来吧!

  各位:我现在在JavaScript中定义一个一维数组,然后调用VB编写的DLL对象,在DLL对象给此数组赋值,然后在JavaScript读出已经赋值的数组。请问如何操作。

  DLL对象:

  TestPrj.Test

PublicSubTest(strName()AsVariant) strName(0)="MR" strName(1)="zhang"EndSub

  JavaScript:

Scriptlanguage='JavaScript' varA=newArray(); varTest=newActiveObjectX("TestPrj.Test"); Test.Test(A); Response.Write(A.length);/Script

  请问出错在哪里????

  --------------------------------------------------------------- 感谢您使用微软产品。

  您可以在VB中建立AciveXdll,处理含数组参数的函数,在ASP中调用AciveX对象的函数。由于Javascript的array对象与VB中的array以不同的方式存储,因此Javascript的array对象作为VBActiveXdll函数的参数将出现类型不匹配的错误。建议您在ASP中用VBscript。

  如下例,先在VB中建立AciveXdll工程,项目名为ASPArray,类名clsArray

PublicFunctionTestArray(ByRefvArrayAsVariant)AsString  DimnCntAsInteger   'Checkthattheargumentpassedisanarray  IfNotIsArray(vArray)Then   TestArray="ParameterisnotanArray"   ExitFunction  EndIf   FornCnt=LBound(vArray)ToUBound(vArray)    'changeArrayElement    vArray(nCnt)="aqqq"  NextnCnt      TestArray="ParameterisanArray"   EndFunction

  在ASP中引用ASPArray.clsArray对象,

% DimoTestObj,vMyArray(2),vRtnValue        vMyArray(0)="Element1"  vMyArray(1)="Element2"  vMyArray(2)="Element3"   SetoTestObj=Server.CreateObject("ASPArray.clsArray")   vRtnValue=oTestObj.TestArray(vMyArray)  Response.Write(vRtnValue) % br vMyArray(1)=%=vMyArray(1)%

  详细信息请参考以下链接:

  HOWTO:ImplementArrayArgumentsinVBCOMObjectsforASP

  http://support.microsoft.com/support/kb/articles/q217/1/14.asp

  您可以使用JavaScript中vbArray对象的toArray()方法把VBScript的数组(Array)转化为Javascript数组,但是截至到目前VBScript(4.0)版,还没有把JavaScript数组转化为VBscript数组的方法。

  详细信息请参考以下文档中PassingArraysfromVBScripttoJscript部分:

  UsingVBScriptandJScriptonaWebPage

  http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnvid/html/msdn_vbnjscrpt.asp

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)

  -微软全球技术中心VB技术支持

  本贴子以现状提供且没有任何担保,同时也没有授予任何权利。具体事项可参见使用条款

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)

  (http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。

  为了为您创建更好的讨论环境,请参加我们的用户满意度调查

  (http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。

展开更多 50%)
分享

猜你喜欢

关于javascript数组与VB DLL中中数组的传递问题

Web开发
关于javascript数组与VB DLL中中数组的传递问题

关于javascript中数组元素删除问题的讨论

Web开发
关于javascript中数组元素删除问题的讨论

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

JavaScript教程:JavaScript中的数组

Web开发
JavaScript教程:JavaScript中的数组

JavaScript中数组方法

Web开发
JavaScript中数组方法

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

JavaScript中splice数组函数

Web开发
JavaScript中splice数组函数

谈谈JavaScript中的数组、集合及效率

Java JAVA基础
谈谈JavaScript中的数组、集合及效率

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

CSS教程:CSS样式层叠顺序

CSS教程:CSS样式层叠顺序

为什么win10玩lol蓝屏闪退很卡

为什么win10玩lol蓝屏闪退很卡
下拉加载更多内容 ↓