Navegando encontre esta rutina que nos informa si el sistema operativo no pose una cierta dll o su vercion sea distinta y no posea la funcion que llamamos y asi priviamente verificar si existe o no dicha funcion o dll


Código:
Option Explicit

Private Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" (ByVal lpLibFileName As String) As Long
Private Declare Function GetProcAddress Lib "kernel32" (ByVal hModule As Long, ByVal lpProcName As String) As Long
Private Declare Function FreeLibrary Lib "kernel32" (ByVal hLibModule As Long) As Long

'Purpose : Determines if a specific API is available on a machine.
'Inputs : sFunctionName The name of the function within the library eg. "FindWindowA".
' sDllName The name of the DLL eg. "user32".
'Outputs : Returns True if the API is available on this machine.
'Notes : Do NOT use an alias name for sFunctionName, you must use the original API name.
' eg. use "FindWindowA" rather then the commonly used alias "FindWindow".

Function APIAvailable(ByVal sFunctionName As String, ByVal sDllName As String) As Boolean
 Dim lHandle As Long, lAddr As Long

 On Error Resume Next
 'Load the library
 lHandle = LoadLibrary(sDllName)
 If lHandle <> 0 Then
 'Get the address to the function name
 APIAvailable = CBool(GetProcAddress(lHandle, sFunctionName))
 'Release the resource
 FreeLibrary lHandle
 Else
 APIAvailable = False
 End If
 On Error GoTo 0

End Function


Private Sub Form_Load()
If APIAvailable("FindWindowA", "user32") Then
 MsgBox "La llamda al API FindWindowA es valida..."
 Else
 MsgBox "La llamda al API FindWindowA No es valida..."
 End If
End Sub