Перехват исключительных ситуаций и обработка ошибок
Типы ошибок Design-time Runtime Logic
Cтруктурные обработчики ошибок Try…Catch
Private Sub Button1_Click(…..) Dim s As String s = "answer" Button1.Text = s.Substring(10, 1) End Sub
Try Операторы, которые могут вызвать ошибку времени исполнения Catch Операторы, которые выполняются, если ошибка времени исполнения происходит Finally Дополнительные операторы, выполняемые независимо от возникновения ошибки End Try
Private Sub Button1_Click(…..) Dim s As String s = "answer Button1.Text = s.Substring(10, 1) End Sub Try Catch Button1.Text = "error" End Try
Private Sub Button1_Click(…..) Dim s As String s = "answer Button1.Text = s.Substring(10, 1) End Sub Try Catch Button1.Text = "error" End Try ex As Exception MsgBox(ex.Message)
Private Sub Button1_Click(…) Try Button1.Text = lbStates.SelectedItem.ToString Catch ex As System.NullReferenceException MsgBox("Please select an item first") Catch ex As Exception MsgBox("Some other error: " & ex.Message) End Try End Sub
Использование блока Finally Private Sub Button1_Click(…) Try PictureBox1.Image = System.Drawing.Bitmap.FromFile("a:\File open.bmp") Catch MsgBox("Пожалуйста, вставьте дискету в дисковод A!") Finally MsgBox("Обработка ошибок выполнена") End Try
Обработка исключительных ситуаций в базах данных Exception SqlExceptionOleDbException Message NativeError SQLState … Message Number Procedure …
Try ' код для доступа к данным Catch ex As SqlException ' обработка исключения End Try