Arrays VB类型不匹配问题-inArray()

Arrays VB类型不匹配问题-inArray(),arrays,asp-classic,vbscript,function,Arrays,Asp Classic,Vbscript,Function,我不是一个VB程序员,但像这样的东西应该足够简单。。。不过我在这里真的被难住了 我有一个web应用程序,可以处理电子邮件和PDF文件。我正在向它添加一些新函数,遇到了两个非常基本的“类型不匹配”错误,并且无法解决它们 第一种情况发生在我在一个简单的查找/替换脚本中调用inArray()时。我在数据库中创建了一个字段名数组,并将电子邮件的内容与这些名称进行比较,以便$*%%P1FirstName可以替换为数据库中的实际名字。很简单 这段代码在站点的其他地方也可以使用,但在这个新页面上,我在包含in

我不是一个VB程序员,但像这样的东西应该足够简单。。。不过我在这里真的被难住了

我有一个web应用程序,可以处理电子邮件和PDF文件。我正在向它添加一些新函数,遇到了两个非常基本的“类型不匹配”错误,并且无法解决它们

第一种情况发生在我在一个简单的查找/替换脚本中调用inArray()时。我在数据库中创建了一个字段名数组,并将电子邮件的内容与这些名称进行比较,以便$*%%P1FirstName可以替换为数据库中的实际名字。很简单

这段代码在站点的其他地方也可以使用,但在这个新页面上,我在包含inArray()调用的行中得到了类型不匹配错误:

我不明白为什么两个字符串数组不能进行比较(或者为什么相同的调用在其他地方有效)。当我输出任何东西(如字段名)时,似乎没有任何东西是关闭的,过度使用CStr()也无济于事

另一个只是一个函数调用:

WritePDF(iformID、TemplateFile、Appfile、签名、rsProc(“fontSize”)、passwordProtect)

其中签名和密码保护是布尔值。更复杂的是,错误并没有告诉我哪个字段是关闭的。我刚刚尝试了一系列的重新措辞和cbool(),并手动设置了每个字段,但没有取得任何进展。同样,此代码也适用于站点中的每个其他页面


我相信对于这些问题有一个非常简单的答案,我还没有找到它,这让我发疯。如果您立即注意到了什么,我很想得到反馈。

这个确切的代码在其他地方也能用吗?确实要按正确的顺序将参数传递给inArray()函数吗?字符串数组和按错误顺序传递的字符串将导致类型不匹配错误。

精确代码在其他地方可以使用吗?确实要按正确的顺序将参数传递给inArray()函数吗?字符串数组和按错误顺序传递的字符串将导致类型不匹配错误。

vbscript中没有名为InArray()的内置函数。是否包含该函数?

vbscript中没有名为InArray()的内置函数。你有这个功能吗?

不如这样做:

strOut = ""
strIn = strEmail

strTmp = ""
For Each f In rs2.fields
    If Instr(strIn, "$*%%" & f.name) > 0 Then
        strIn = Replace(strIn, "$*%%" & f.name, rs2(f.Name).Value)
    End If
Next

strOut = strIn

不如换成这样:

strOut = ""
strIn = strEmail

strTmp = ""
For Each f In rs2.fields
    If Instr(strIn, "$*%%" & f.name) > 0 Then
        strIn = Replace(strIn, "$*%%" & f.name, rs2(f.Name).Value)
    End If
Next

strOut = strIn

精确代码。。。我已经解决了这个问题。它与类型不匹配完全无关。。。inArray()不像我想象的那样是一个内置函数,它位于一个我忘记包含的include中。我从来没有想到过这一点,因为这个错误离“未定义函数”很远,这是有意义的。。。我已经解决了这个问题。它与类型不匹配完全无关。。。inArray()不像我想象的那样是一个内置函数,它位于一个我忘记包含的include中。我从来没有想到过,因为这个错误离“未定义的函数”很远,这是有意义的。