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