Avatar billede peanut2000 Nybegynder
01. marts 2004 - 13:07 Der er 6 kommentarer og
2 løsninger

Emailformular melder overload

Får følgende fejl: Overload resolution failed because no accessible 'Send' accepts this number of arguments

Koden se således ud:
Public sub cmdSend_Click(ByVal Sender As System.Object, ByVal e As System.EventArgs)
    'dim objSmtpMail As New SmtpMail()
    dim objMailMessage as New MailMessage()
    SmtpMail.SmtpServer = "post1.tietgen.dk"
    objMailMessage.To = "dm02118@tietgen.dk"
    SmtpMail.Send(objMailMessage.To, txtMedlemsnr.text, txtNavn.text, txtTlf.text, txtEmne.text)

    'SmtpMail= Nothing

End sub

Sub cmdNulstil_Click(sender As Object, e As EventArgs)

    txtMedlemsnr.text = ""
    txtNavn.text = ""
    txtTlf.text = ""
    txtEmne.text = ""

End sub

Hvis jeg kun har 3 tekstbokse så virker det - Kan det være fordi at metoden til at sende mail med ikke kan indeholde flere tekststrenge????
Avatar billede nielsbrinch Nybegynder
01. marts 2004 - 13:18 #1
De argumenter i SmtpMail.Send er afsat til ganske bestemte formål. Du kan ikke bare tilføje ekstra tekst-strenge. Du kan sætte tekst i emnet og i selve indholdet af mailen.

Hvis du vil have alle 4 parametre til at optræde i indholdet, skal du samle dem i en enkelt string.
Avatar billede nielsbrinch Nybegynder
01. marts 2004 - 13:23 #2
Du skal altså gøre noget i retningen af det her:

SmtpMail.Send(objMailMessage.From, objMailMessage.To, txtEmne.text, txtMedlemsnr.text+" "+txtNavn.text+" "+txtTlf.text)

Den tager altså kun 4 argumenter. Fra, Til, Emne og Indhold. De skal være i den rækkefølge og der må ikke være flere eller færre argumenter.
Avatar billede nielsbrinch Nybegynder
01. marts 2004 - 13:25 #3
forresten ... datamatikere fra Tietgen-skolen styrer!! :)
Avatar billede peanut2000 Nybegynder
01. marts 2004 - 14:03 #4
Hvad gør jeg så med objMailMessage.From, den skal jo kende afsenders e-mail-adresse?
Avatar billede nielsbrinch Nybegynder
01. marts 2004 - 15:29 #5
Det er rigtigt, du skal have én eller anden fra-adresse når du sender en email. Den fra-adresse behøver ikke komme fra MailMessage, det gør din to-adresse heller ikke. Det skal bare være String's. Men den forventer at det er en gyldig email-adresse, ellers kan din smtp-server skabe problemer.

Se i øvrigt metoden her: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemWebMailSmtpMailClassSendTopic.asp

Som det fremgår, kan den både modtage 4 strings, men den kan også modtage et MailMessage-objekt. Du kan altså fylde dit objMailMessage op med fra, til, emne og indhold, og så nøjes med at sende selve objMailMessage med i din Send-metode.
Avatar billede peanut2000 Nybegynder
03. marts 2004 - 11:54 #6
Forstår ikke helt hvordan jeg får lavet en string og får anbragt den i emailens beskedhoved, kan du ikke vise et eks, som virker
Avatar billede nielsbrinch Nybegynder
03. marts 2004 - 12:37 #7
Njah, jeg er til C#, men hvis du selv kan oversætte, er der her et eksempel på noget der virker:

SmtpMail.Send("billg@microsoft.com", "michael@dell.com", "Selling your company", "Dear Mr. Dell. Would you please be so kind and sell your company to me. Or I will break your legs!");
Avatar billede nielsbrinch Nybegynder
03. marts 2004 - 12:38 #8
du kan vist bruge \n til at skifte linje med, hvis du vil. f.eks.

"Hej\n\nDette er en besked"

bliver til:

Hej

Dette er en besked
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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