function - español - vbscript ejemplos
¿Hay alguna manera de verificar si se define una función de VBScript? (2)
Es una forma un poco chistosa de hacerlo, ya que depende de haber configurado "On Error Resume Next", pero podrías hacer algo como esto:
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
La llamada a GetRef generará una excepción si el sub o la función que está tratando de obtener un puntero no existe (como es el caso aquí con DoStuff2). Luego puede verificar si la referencia se estableció como se esperaba.
Esto es probablemente solo una ilusión ...
¿Hay alguna forma de verificar si se define una función ASP / VBScript antes de llamarla?
Aquí está mi solución, que funciona según el mismo principio, pero el hacky-ness es bastante autónomo:
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