各位:我现在在JavaScript中定义一个一维数组,然后调用VB编写的DLL对象,在DLL对象给此数组赋值,然后在JavaScript读出已经赋值的数组。请问如何操作。
DLL对象:
TestPrj.Test
Public Sub Test(strName() As Variant) strName(0) = "MR " strName(1) = "zhang "End Sub
JavaScript:
<Script language= 'JavaScript '> var A=new Array(); var Test=new ActiveObjectX( "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
Public Function TestArray(ByRef vArray As Variant) As String Dim nCnt As Integer 'Check that the argument passed is an array If Not IsArray(vArray) Then TestArray = "Parameter is not an Array " Exit Function End If For nCnt = LBound(vArray) To UBound(vArray) 'change Array Element vArray(nCnt) = "aqqq " Next nCnt TestArray = "Parameter is an Array "End Function
在ASP中引用ASPArray.clsArray对象,
<% Dim oTestObj, vMyArray(2), vRtnValue vMyArray(0) = "Element 1 " vMyArray(1) = "Element 2 " vMyArray(2) = "Element 3 " Set oTestObj = 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
-微软全球技术中心VB技术支持
本贴子以“现状”提供且没有任何担保,同时也没有授予任何权利。具体事项可参见使用条款
(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))。
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索javascript
, 数组
, 对象
, 数组问题
, test
, vb.dll发布不能验证
, microsoft
, 数组vb
, Array对象方法参考
, varray
javascript对象数组
javascript 传递数组、dll 传递数组、vb 传递数组、vb 如何传递数组参数、vb 数组函数参数传递,以便于您获取更多的相关知识。