2016-01-13 6 views
0

Я сделал программу, похожую на электронную почту. Когда я начинаю его, он дает мне сообщение об ошибке:Произошло необработанное исключение типа «System.InvalidOperationException»

Необработанное исключение типа 'System.InvalidOperationException' произошло в меню (VB версии 1.0) .exe

Мой код

Imports System.Net.Mail 
Public Class Email 
    Dim Tárgy As String = TextBox4.Text 
    Dim Üzenet As String = TextBox5.Text 
    Dim UserEmail As String = TextBox1.Text 
    Dim UserPass As String = TextBox2.Text 
    Dim ToEmail As String = TextBox3.Text 
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 

    End Sub 

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 

     Dim MyMailMessage As New MailMessage() 
     Try 
      MyMailMessage.From = New MailAddress(UserEmail) 
      MyMailMessage.To.Add(ToEmail) 
      MyMailMessage.Subject = (Tárgy) 
      MyMailMessage.Body = (Üzenet) 
      Dim SMTP As New SmtpClient("smtp.gmail.com") 
      SMTP.Port = 587 
      SMTP.EnableSsl = True 
      SMTP.Credentials = New System.Net.NetworkCredential((UserEmail), (UserPass)) 
      SMTP.Send(MyMailMessage) 
     Catch ex As Exception 
     End Try 
    End Sub 
End Class 
+0

Я думаю, вы не сделали программу в конце концов ... –

ответ

1

Переместите инициализацию своих строк внутри события Click. Вам не нужно их прежде, и делать это на глобальном уровне вызовет исключение, потому что TextBoxes и другие элементы управления еще не инициализирован

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 

    Dim Tárgy As String = TextBox4.Text 
    Dim Üzenet As String = TextBox5.Text 
    Dim UserEmail As String = TextBox1.Text 
    Dim UserPass As String = TextBox2.Text 
    Dim ToEmail As String = TextBox3.Text 

    Dim MyMailMessage As New MailMessage() 
    ....    
    SMTP.Send(MyMailMessage) 
End Sub 

Кроме того, если вы ничего не делаете, за исключением, то не используйте пустые блоки trt/catch. Если возникает исключение, вы не можете увидеть ошибку.

Смежные вопросы