ErrObject.LastDllError Propiedad

Definición

Devuelve un código de error del sistema generado por una llamada a una biblioteca de vínculos dinámicos (archivo DLL).

public:
 property int LastDllError { int get(); };
public int LastDllError { get; }
public int LastDllError { [System.Security.SecurityCritical] get; }
member this.LastDllError : int
[<get: System.Security.SecurityCritical>]
member this.LastDllError : int
Public ReadOnly Property LastDllError As Integer

Valor de propiedad

Código de error del sistema generado por una llamada a una biblioteca de vínculos dinámicos (DLL).

Atributos

Ejemplos

En el ejemplo siguiente se muestra cómo puede usar la LastDllError propiedad después de llamar a una función en la API de Windows. El PrintWindowCoordinates procedimiento toma un identificador a una ventana y llama a la GetWindowRect función . GetWindowRect rellena la estructura de datos RECT con las longitudes de los lados del rectángulo que componen la ventana. Si pasa un identificador no válido, se produce un error y el número de error está disponible a través de la LastDllError propiedad .

Declare Function GetWindowRect Lib "user32" (
    ByVal hwnd As Integer, ByRef lpRect As RECT) As Integer

Public Structure RECT
    Public Left As Integer
    Public Top As Integer
    Public Right As Integer
    Public Bottom As Integer
End Structure

Const ERROR_INVALID_WINDOW_HANDLE As Long = 1400
Const ERROR_INVALID_WINDOW_HANDLE_DESCR As String = 
    "Invalid window handle."
Private Sub PrintWindowCoordinates(ByVal hwnd As Integer)
' Prints left, right, top, and bottom positions
' of a window in pixels.

  Dim rectWindow As RECT

  ' Pass in window handle and empty the data structure.
  ' If function returns 0, an error occurred.
  If GetWindowRect(hwnd, rectWindow) = 0 Then
      ' Check LastDllError and display a dialog box if the error
      ' occurred because an invalid handle was passed.
      If Err.LastDllError = ERROR_INVALID_WINDOW_HANDLE Then
          MsgBox(ERROR_INVALID_WINDOW_HANDLE_DESCR, Title:="Error!")
      End If
  Else
      Debug.Print(rectWindow.Bottom)
      Debug.Print(rectWindow.Left)
      Debug.Print(rectWindow.Right)
      Debug.Print(rectWindow.Top)
  End If
End Sub

Comentarios

La LastDllError propiedad solo se aplica a las llamadas DLL realizadas desde código de Visual Basic. Cuando se realiza dicha llamada, la función llamada normalmente devuelve un código que indica éxito o error y se rellena la LastDllError propiedad . Compruebe la documentación de las funciones del archivo DLL para determinar los valores devueltos que indican éxito o error. Siempre que se devuelva el código de error, la aplicación de Visual Basic debe comprobar inmediatamente la LastDllError propiedad. No se produce ninguna excepción cuando se establece la LastDllError propiedad .

Nota

En el caso de los dispositivos inteligentes, esta propiedad siempre devuelve cero.

Se aplica a

Consulte también