Compartilhar via


ErrObject.LastDllError Propriedade

Definição

Obtém um código de erro do sistema produzido por uma chamada a uma DLL (biblioteca de vínculo dinâmico).

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 da propriedade

Um código de erro do sistema produzido por uma chamada para uma DLL (biblioteca de vínculo dinâmico).

Atributos

Exemplos

O exemplo a seguir mostra como você pode usar a LastDllError propriedade depois de chamar uma função na API do Windows. O PrintWindowCoordinates procedimento usa um identificador para uma janela e chama a GetWindowRect função . GetWindowRect preenche a estrutura de dados RECT com os comprimentos dos lados do retângulo que compõem a janela. Se você passar um identificador inválido, ocorrerá um erro e o número de erro estará disponível por meio da LastDllError propriedade .

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

Comentários

A LastDllError propriedade se aplica somente a chamadas DLL feitas a partir do código do Visual Basic. Quando essa chamada é feita, a função chamada geralmente retorna um código que indica êxito ou falha e a LastDllError propriedade é preenchida. Verifique a documentação das funções da DLL para determinar os valores retornados que indicam êxito ou falha. Sempre que o código de falha é retornado, o aplicativo do Visual Basic deve marcar imediatamente a LastDllError propriedade . Nenhuma exceção é gerada quando a LastDllError propriedade é definida.

Observação

Para dispositivos inteligentes, essa propriedade sempre retorna zero.

Aplica-se a

Confira também