有没有什么办法来检查,看是否有VBScript函数的定义?
-
06-09-2019 - |
题
这可能只是一厢情愿的想法......
有没有什么办法来检查,看是否ASP / VBScript函数是调用之前定义的?
解决方案
这是一个稍微哈克的方式,因为它依赖于具有设置为“On错误继续下一步”做到这一点,但你可以做这样的事情:
On Error Resume Next
Dim objRef1, objRef2
Set objRef1 = GetRef("DoStuff1")
If objRef1 Is Nothing Then
Call objRef1
Else
MsgBox "DoStuff1 is not defined!"
End If
Set objRef2 = GetRef("DoStuff2")
If objRef2 Is Nothing Then
MsgBox "DoStuff2 is not defined!"
Else
Call objRef2
End If
Sub DoStuff1
MsgBox "DoStuff1!"
End Sub
要GetRef电话将产生如果子异常或功能,您正在试图获得一个指向不存在(如这里的情况与DoStuff2)。然后,可以检查是否如预期的基准设定。
其他提示
下面是我的解决方案,它在相同的原理工作,但哈克岬是很好的自我包含的:
Function FunctionExists( func_name )
FunctionExists = False
On Error Resume Next
Dim f : Set f = GetRef(func_name)
If Err.number = 0 Then
FunctionExists = True
End If
On Error GoTo 0
End Function
不隶属于 StackOverflow