Condividi tramite


Proprietà LastDllError (oggetto Err)

Aggiornamento: novembre 2007

Restituisce il codice di un errore di sistema generato da una chiamata a una libreria di collegamento dinamico (DLL). Di sola lettura.

ReadOnly Property LastDllError() As Integer

Note

La proprietà LastDllError si applica solo alle chiamate a DLL eseguite dal codice Visual Basic. Quando si effettuano tali chiamate, la funzione chiamata restituisce di norma un codice che indica la riuscita o meno dell'operazione e tale valore viene salvato nella proprietà LastDllError. Per ulteriori informazioni sulla determinazione dei valori restituiti che indicano la riuscita o meno di un'operazione, consultare la documentazione sulle funzioni delle DLL. In caso di restituzione del codice di mancata riuscita, nell'applicazione Visual Basic dovrebbe essere presente l'immediato controllo della proprietà LastDllError. Se è impostata la proprietà LastDllError non vengono generate eccezioni.

Nota:

La proprietà LastDllError è protetta da LinkDemandche consente di impedire l'accesso al codice non attendibile. Tuttavia, LinkDemand richiede che solo il chiamante immediato abbia l'autorizzazione UnmanagedCode. Se il codice può essere chiamato dal codice parzialmente attendibile, l'esposizione del valore di LastDllError senza convalida costituisce un problema di sicurezza.

Per le principali limitazioni relative all'utilizzo del membro LinkDemand, vedere Demand e LinkDemand. Per ulteriori informazioni su tali autorizzazioni, vedere SecurityPermission e Permessi di accesso al codice.

Esempio

Nell'esempio seguente viene illustrato come utilizzare la proprietà LastDllError dopo aver chiamato una funzione nell'API Windows. La routine PrintWindowCoordinates accetta un handle a una finestra e chiama la funzione GetWindowRect. GetWindowRect riempie la struttura dei dati RECT con le lunghezze dei lati del rettangolo che costituiscono la finestra. Se si passa un handle non valido, si verifica un errore e il numero di errore viene reso disponibile dalla proprietà LastDllError.

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

Note per gli sviluppatori di applicazioni per Smart Device

Questa proprietà restituisce sempre zero.

Requisiti

Spazio dei nomi:Microsoft.VisualBasic

**Modulo:**ErrObject

Assembly: Visual Basic Runtime Library (in Microsoft.VisualBasic.dll)

Vedere anche

Concetti

Demand e LinkDemand

Riferimenti

Oggetto Err (Visual Basic)

Istruzione Declare

Proprietà Descrizione (oggetto Err)

Funzione ErrorToString

Proprietà HelpContext (oggetto Err)

Proprietà HelpFile (oggetto Err)

Proprietà Number (oggetto Err)

Proprietà Source (oggetto Err)