Avatar billede the_game Nybegynder
02. november 2003 - 19:26 Der er 11 kommentarer

Email form i Visual Basic 6.0

Hey...

Kan man lave en email form i Visual basic...?

hvis ja...hvordan laver man den?
Avatar billede skwat Praktikant
02. november 2003 - 19:55 #1
ja, det kan man.
Der findes nogle gratise smtp dller ude å a indernet.
Du kan også kalde oulook * from din application, kommer lidt an på hvad du helst vil.
Avatar billede c_d Nybegynder
02. november 2003 - 20:04 #2
her er der en fuld kode der kan sende en mail!!:::

Dim Response As String
Dim Start As Single, Tmr As Single

Sub SendEmail(MailServerName As String, FromName As String, FromEmailAddress As String, ToName As String, ToEmailAddress As String, EmailSubject As String, EmailBodyOfMessage As String)
Dim DateNow As String
Dim first As String, Second As String, Third As String
Dim Fourth As String, Fifth As String, Sixth As String
Dim Seventh As String
With Winsock1
    If .State = sckClosed Then ' Check to see if socket is closed
        DateNow = Format(Date, "Ddd") & ", " & Format(Date, "dd Mmm YYYY") & " " & Format(Time, "hh:mm:ss") & "" & " -0600"
        first = "mail from: " & FromEmailAddress & vbCrLf ' Get who's sending E-Mail address
        Second = "rcpt to: " & ToEmailAddress & vbCrLf ' Get who mail is going to
        Third = "Date: " & DateNow & vbCrLf ' Date when being sent
        Fourth = "From: """ & FromName & """ <" & FromEmailAddress & ">" + vbCrLf
        Fifth = "To: " & ToNametxt & vbCrLf ' Who it going to
        Sixth = "Subject: " & EmailSubject & vbCrLf ' Subject of E-Mail
        Seventh = EmailBodyOfMessage & vbCrLf ' E-mail message body
        Ninth = "X-Mailer: STMP Sender" & vbCrLf ' What program sent the e-mail, customize this
        .LocalPort = 0 ' Must set local port to 0 (Zero) or you can only send 1 e-mail per program start
        .Protocol = sckTCPProtocol
        .RemoteHost = MailServerName
        .RemotePort = 25 ' Set the SMTP Port
        .Connect ' Start connection
        WaitFor ("220")
        StatusTxt.Caption = "Connecting...."
        .SendData ("HELO EnterComputerNameHere" & vbCrLf)
        WaitFor ("250")
        StatusTxt.Caption = "Connected"

        .SendData (first)
        StatusTxt.Caption = "Sending Message"

        WaitFor ("250")
        .SendData (Second)
        WaitFor ("250")
        .SendData ("data" & vbCrLf)
        WaitFor ("354")
        .SendData (Fourth & Third & Ninth & Fifth & Sixth & vbCrLf)
        .SendData (Seventh & vbCrLf)
        .SendData ("." & vbCrLf)
        WaitFor ("250")
        .SendData ("quit" & vbCrLf)
        StatusTxt.Caption = "Disconnecting"

        WaitFor ("221")
        .Close
    Else
        MsgBox (Str(.State))
    End If
End With
End Sub

Sub WaitFor(ResponseCode As String)
    Start = Timer
    While Len(Response) = 0
        Tmr = Start - Timer
        DoEvents
        If Tmr > 50 Then ' Time in seconds to wait
            MsgBox "SMTP service error, timed out while waiting for response", 64, MsgTitle
            Exit Sub
        End If
    Wend
    While Left(Response, 3) <> ResponseCode
        DoEvents
        If Tmr > 50 Then
          MsgBox "SMTP service error, impromper response code. Code should have been: " + ResponseCode + " Code recieved: " + Response, 64, MsgTitle
          Exit Sub
        End If
    Wend
    Response = ""
End Sub


Private Sub CmdSendMail_Click()
    SendEmail txtEmailServer.Text, txtFromName.Text, txtFromEmailAddress.Text, txtToEmailAddress.Text, txtToEmailAddress.Text, txtEmailSubject.Text, txtMessage.Text
    StatusTxt.Caption = "Mail Sent"
    Beep
    Close
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
    Winsock1.GetData Response
End Sub
Avatar billede c_d Nybegynder
02. november 2003 - 20:05 #3
Den bliver sendt via Winsock... Det er grunden til at den er lidt lang :)
Avatar billede the_game Nybegynder
03. november 2003 - 17:04 #4
Kunne du også fortælle mig vilken ting, jeg skal oprette?
så som en command knap og så videre
Avatar billede the_game Nybegynder
14. december 2003 - 18:51 #5
kan i ikke fortælle mig lidt mere detajleret beskivelse, at hvordan man laver en email form?
Avatar billede skwat Praktikant
14. december 2003 - 19:55 #6
jo da,
Du laver
txtto
txtcc
txtbcc
txtsubject
txtbody
lstattatcments
cmdattach
cmdsendmail
cmdcancel

lægger funktionalitet ind, og wooopty du har en email form.
Avatar billede the_game Nybegynder
23. december 2003 - 22:50 #7
hvad er en lstattatcments?
Avatar billede skwat Praktikant
24. december 2003 - 02:42 #8
en ting der kan lufte din hund, og tage opvasken, menkun hvis man taler pænt!
Avatar billede the_game Nybegynder
29. december 2003 - 13:19 #9
Hvad???

Jeg spørger bare...
Avatar billede skwat Praktikant
30. december 2003 - 00:22 #10
måske en listbox - bare et gæt.

Nu vi er igang, skal vi så ikke lave en komplet .vbp til dig, og evt. lave en installer bare for at være sikker?
Avatar billede the_game Nybegynder
03. januar 2004 - 18:30 #11
jaa...det lyder som en god ide
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester