Изпращане на e-mail чрез Visual Basic?
5 отговора
202 прегледа
Изпращане на e-mail чрез Visual Basic?
Някой знае ли как чрез натискането на 1 бутон да се изпраща като писмо информацията от един TextBox. Питах на еднодруго място и там ми препоръчаха да прегледам един проект но лично при мен той не работи :(
[линк]
Може би нещо сървъра бъркам или нещо такова..ако някой знае с кой сървър работи ще съм много благодарен :D
[линк]
Може би нещо сървъра бъркам или нещо такова..ако някой знае с кой сървър работи ще съм много благодарен :D
Re: Изпращане на e-mail чрез Visual Basic?
Ами със сървъра, който си му задал в текстовата кутия - ако ти това не си могъл да разбереш, въобще не се занимавай с програмиране, не е за теб!
Re: Изпращане на e-mail чрез Visual Basic?
Остави го това дали програмирането е за мен..просто въпроса беше че не изпраща съобщението..дава грешка а това е от оригиналния проект и просто питах ако някой може да ми препойи друг проект или да види къде е грешката на този ще съм благодарен 
Re: Изпращане на e-mail чрез Visual Basic?
Sending mail
This is the code I use to send emails using Winsock. You need these two controls: Winsock1 and Command1.
' In general Declarations
Dim received As Boolean
Private Sub Command1_Click()
sFrom$ = "Jack@hammer.net"
sTo$ = "zombie@freakys.fsnet.co.uk"
sSubject$ = "Hello Mary"
sMessage$ = "This is a simple Message"
' need SMTP server to route message thru, 25 (SMTP)
Winsock1.Connect "smtp.freeserve.net", 25
Do While Winsock1.State <> sckConnected: DoEvents: Loop
sendMsg "HELO " & "Peaches"
sendMsg "MAIL FROM: <" & sFrom & ">"
sendMsg "RCPT TO: <" & sTo & ">"
sendMsg "DATA"
m$ = m$ + "From: <" + sFrom + ">" + vbCrLf
m$ = m$ + "To: <" + sTo + ">" + vbCrLf
m$ = m$ + "Subject: " + sSubject$ + vbCrLf
m$ = m$ + "Date: " + Format$(Now, "h:mm:ss") + vbCrLf
m$ = m$ + "MIME-Version: 1.0" + vbCrLf
m$ = m$ + "Content-Type: text/plain; charset=us-ascii" + vbCrLf + vbCrLf
m$ = m$ + sMessage$ + vbCrLf + vbCrLf + "." + vbCrLf
sendMsg m$ + "QUIT"
Winsock1.Close
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
received = True
End Sub
Sub sendMsg(m$)
Winsock1.SendData m$ + vbCrLf
received = False
Do Until received
DoEvents
Loop
End Sub
This is the code I use to send emails using Winsock. You need these two controls: Winsock1 and Command1.
' In general Declarations
Dim received As Boolean
Private Sub Command1_Click()
sFrom$ = "Jack@hammer.net"
sTo$ = "zombie@freakys.fsnet.co.uk"
sSubject$ = "Hello Mary"
sMessage$ = "This is a simple Message"
' need SMTP server to route message thru, 25 (SMTP)
Winsock1.Connect "smtp.freeserve.net", 25
Do While Winsock1.State <> sckConnected: DoEvents: Loop
sendMsg "HELO " & "Peaches"
sendMsg "MAIL FROM: <" & sFrom & ">"
sendMsg "RCPT TO: <" & sTo & ">"
sendMsg "DATA"
m$ = m$ + "From: <" + sFrom + ">" + vbCrLf
m$ = m$ + "To: <" + sTo + ">" + vbCrLf
m$ = m$ + "Subject: " + sSubject$ + vbCrLf
m$ = m$ + "Date: " + Format$(Now, "h:mm:ss") + vbCrLf
m$ = m$ + "MIME-Version: 1.0" + vbCrLf
m$ = m$ + "Content-Type: text/plain; charset=us-ascii" + vbCrLf + vbCrLf
m$ = m$ + sMessage$ + vbCrLf + vbCrLf + "." + vbCrLf
sendMsg m$ + "QUIT"
Winsock1.Close
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
received = True
End Sub
Sub sendMsg(m$)
Winsock1.SendData m$ + vbCrLf
received = False
Do Until received
DoEvents
Loop
End Sub
Re: Изпращане на e-mail чрез Visual Basic?
Пич, ако имаш Visual Basic.NET, ще ти бъде по-лесно да напишеш това което искаш. Има си готови класове, които можеш да ползваш:
Това в общи линии може да те направи щастлив.

Public Sub SendMail(ByVal MailServer As String, ByVal MailTo As String, ByVal MailSubject As String, ByVal MailMessage As String)
Dim SM As System.Web.Mail.SmtpMail
Dim MM As New System.Web.Mail.MailMessage
With MM
.To = MailTo '[email protected]
.Subject = MailSubject 'Subject
.Body = MailMessage 'Message
End With
With SM
.SmtpServer = MailServer 'smtp.your.mailserver.com
.Send(MM)
End With
End Sub
Това в общи линии може да те направи щастлив.
Re: Изпращане на e-mail чрез Visual Basic?
С кода на Bob го изпраща уж но не го получават хората после :( нещое прецакано :(