Springen naar inhoud


- - - - -
VS 2012 SOLVED

Mailen Met Attachment

VS2012 Mail Attachement

  • Log in a.u.b. om te beantwoorden
Er zijn 6 reacties in dit onderwerp

#1 rob luttge

rob luttge

    Senior Developer

  • Leden
  • PipPipPip
  • 164 berichten
    Laatst bezocht 15 okt 2014 10:51

Geplaatst op 09 februari 2013 - 10:47

Goedemorgen allemaal,

Ik probeer een mail met een word (.docx) bestand te versturen. Een mail zonder attachment of met een .txt attechment is geen probleem. Mar het systeem komt krakend tot stilstand als ik het met een word betsand probeer. Geen foutmeldingen, maar de applicatie bevriest. Ik gebruik onderstaande code

Code:
	 Dim attachment As System.Net.Mail.Attachment
	 attachment = New System.Net.Mail.Attachment("C:\test\test.docx")
mail.Attachments.Add(attachment)
	 SmtpServer.Send(mail)


Wat googlen suggereerde de toevoeging van onderstaande code

Code:
attachment.ContentType = New ContentType("application", "ms-word")


Het vreemde is dat deze code bij accuut een syntax error genereert (overload resolution failed because no accessible 'New' accepts this number of arguments)

Wel is het zo dat in de gevonden voorbeeld code het onderstaande wordt geïmporteerd, deze herkent mijn systeem niet en vind ze ook niet terug als ik bij add references zoek.

Imports Independentsoft.Email
Imports Independentsoft.Email.Smtp
Imports Independentsoft.Email.Mime

Iemand een idee?

Dank

Rob

#2 tromt

tromt

    Professional Developer

  • Leden
  • PipPipPipPip
  • 303 berichten
    Laatst bezocht 17 apr 2018 10:02
  • LocatieRijen (NB)

Geplaatst op 09 februari 2013 - 13:09

Is een beetje weinig code om te zien hoe je het aanpakt, maar als je Outlook op de verzendende computer hebt staan kun je deze routine gebruiken:
Code:
Public Sub EmailTo(Aan As String, CC As String, BCC As String, Subject As String, Importance As String, Body As String, Attatch As String)
		Dim appMail As New Microsoft.Office.Interop.Outlook.Application
		Dim MyMail As Microsoft.Office.Interop.Outlook.MailItem = CType(appMail.CreateItem(Microsoft.Office.Interop.Outlook.OlItemType.olMailItem), Microsoft.Office.Interop.Outlook.MailItem)
		With MyMail
			.To = Aan
			.CC = CC
			.BCC = BCC
			.Subject = Subject
			Select Case Importance
				Case "H" : .Importance = Microsoft.Office.Interop.Outlook.OlImportance.olImportanceHigh
				Case "L" : .Importance = Microsoft.Office.Interop.Outlook.OlImportance.olImportanceLow
				Case "N" : .Importance = Microsoft.Office.Interop.Outlook.OlImportance.olImportanceNormal
			End Select
			.Body = Body
			If Attatch <> "" Then
				.Attachments.Add(Attatch)
			End If
			.Display()
		End With
End Sub

en die roep ja dan aan met:
Code:
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
		EmailTo("[email="zelfinvullen@gmail.com"]zelfinvullen@gmail.com[/email]", "", "", "test met attachment", "", "poging", "C:\oefenmateriaal.docx")
End Sub


bij mij werkt dat...
eh . . . die button_click komt een beetje vervormd over, maar waar het om gaat is dat je het pad naar het bestand aangeeft

#3 rob luttge

rob luttge

    Senior Developer

  • Leden
  • PipPipPip
  • 164 berichten
    Laatst bezocht 15 okt 2014 10:51

Geplaatst op 09 februari 2013 - 14:00

Tromt,

Dank! Probleem opgelost, duurt alleen vrij lang om het te versturen, maar met sendasync is dat geen probleem.

Goed weekend gewenst.

Rob

#4 Benno

Benno

    R.I.P.

  • Leden
  • PipPipPipPipPip
  • 949 berichten
    Laatst bezocht 08 mrt 2018 20:32
  • LocatieGyor, Magyarország

Geplaatst op 09 februari 2013 - 19:44

Bericht bekijkenrob luttge, op 09 februari 2013 - 14:00, zei:

Probleem opgelost,

Maar enkel als outlook geïnstalleerd is?

Visual Basic Code:
 mail.Attachments.Add(New Attachment("document.docx"))
Zou gewoon moeten werken.

#5 tromt

tromt

    Professional Developer

  • Leden
  • PipPipPipPip
  • 303 berichten
    Laatst bezocht 17 apr 2018 10:02
  • LocatieRijen (NB)

Geplaatst op 10 februari 2013 - 12:06

@ Benno,
tsja, dat dacht ik, als je een referentie moet zetten naar Outlook 14, dan dacht ik dat die alleen beschikbaar zou zijn als Office 14 dan ook geinstalleerd was. Is dat niet zo?

#6 Benno

Benno

    R.I.P.

  • Leden
  • PipPipPipPipPip
  • 949 berichten
    Laatst bezocht 08 mrt 2018 20:32
  • LocatieGyor, Magyarország

Geplaatst op 10 februari 2013 - 13:41

Wat ik eigenlijk bedoelde en duidelijker had moeten maken is:
Rob heeft een probleem met het versturen van een attachment met de System.Net.Mail namespace.
Dat probleem is niet opgelost.

Mijn ervaring met programmeren is dat je vooral bijleert door dingen te doen werken die eerst niet werkten omdat je iets fout deed, of iets niet goed begrijpt.
Of door in te zien dat iets niet kan werken zoals je het hebt geprobeerd, omdat je het verkeerd voorhad.
Het "vluchten" naar een andere oplossing is het ontwijken van dat leerproces en dus niet productief.
Soms is een probleem enkel op te lossen via een totaal andere weg, of is een totaal andere aanpak gewoon beter.
Maar als je niet weet waarom en/of hoe heb je niets geleerd.

Verder vind ik de afhankelijkheid van outlook voor iets simpels als het meesturen  van een attachment met een email overkill.
En verder compleet overbodig, omdat dat ook gewoon kan via de eerste weg.
Het is ook een veel minder generieke oplossing.

#7 tromt

tromt

    Professional Developer

  • Leden
  • PipPipPipPip
  • 303 berichten
    Laatst bezocht 17 apr 2018 10:02
  • LocatieRijen (NB)

Geplaatst op 26 oktober 2013 - 15:31

doet raar...haal dit maar weg...





Ook met taq VS 2012 SOLVED, VS2012, Mail, Attachement voorzien

0 gebruiker(s) lezen dit onderwerp

0 lid(leden), 0 bezoeker(s), 0 anonieme gebruikers

Inloggen


[VS 2012 SOLVED] Untitled 1

Met dank aan Jürgen voor de jarenlange inzet van visualbasic.be (anno dec 2000)
Met dank aan Mike en Ronneke voor de jarenlange inzet van vbib.be (anno dec 2010)
Met dank aan PascalBianca voor de jarenlange inzet van vbib.be (anno dec 2016)