ErrObject.LastDllError 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取调用动态链接库 (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
属性值
调用动态链接库生成的系统错误代码 (DLL) 。
- 属性
示例
以下示例演示如何在 Windows API 中调用函数后使用 LastDllError
属性。 该过程 PrintWindowCoordinates
采用窗口的句柄并调用 GetWindowRect
函数。 GetWindowRect
使用构成窗口的矩形边的长度填充 RECT 数据结构。 如果传递的句柄无效,则会发生错误,并且可通过 属性获取 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
注解
属性 LastDllError 仅适用于从 Visual Basic 代码进行的 DLL 调用。 进行此类调用时,被调用的函数通常返回指示成功或失败的代码,并 LastDllError 填充 属性。 查看 DLL 函数的文档以确定指示成功或失败的返回值。 每当返回失败代码时,Visual Basic 应用程序应立即检查 LastDllError 属性。 设置 属性时 LastDllError 不会引发异常。
注意
对于智能设备,此属性始终返回零。