Поделиться через


Свойство LastDLLError

Возвращает код системной ошибки, которая произошла при вызове библиотеки динамической компоновки (DLL). Только для чтения. Свойство LastDLLError всегда возвращает ноль в Macintosh.

Замечания

Свойство LastDLLError применяется только к вызовам DLL, выполненным из кода Visual Basic. При таком вызове вызванная функция обычно возвращает код, показывающий успешное выполнение или ошибку, который присваивается свойству LastDLLError.

Сведения о том, какие коды означают успешное выполнение или ошибку, см. в документации по функциям DLL. При возврате кода ошибки приложение Visual Basic должно сразу проверить свойство LastDLLError. Если свойство LastDLLError задано, исключение не возникает.

Пример

При вставке в модуль UserForm следующий код вызывает попытку вызова функции DLL. Вызов завершится ошибкой, поскольку передаваемый аргумент (пустой указатель) генерирует ошибку и в любом случае выполнение SQL нельзя отменить, если SQL не выполняется.

Код, следующий за вызовом, проверяет возврат вызова, а затем выводит свойство LastDLLError объекта Err , чтобы отобразить код ошибки. В системах, не использующих библиотеки DLL, свойство LastDLLError всегда возвращает ноль.

Private Declare Function SQLCancel Lib "ODBC32.dll" _
 (ByVal hstmt As Long) As Integer

Private Sub UserForm_Click()
    Dim RetVal
    ' Call with invalid argument.
    RetVal = SQLCancel(myhandle&)
    ' Check for SQL error code.    
    If RetVal = -2 Then
        'Display the information code.
        MsgBox "Error code is :" & Err. LastDllError 
    End If
End Sub

См. также

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.