Usuário com melhor resposta
Mandar email utilizando MAPI

Pergunta
-
Pessoal boa tarde!
Preciso desenvolver uma rotina para enviar email utilizando MAPI, pois temos restrições no servidor para SMTP.
Alguem saberia qual biblioteca tenho que referenciar no meu sistema e como fazer?
Algum exemplo, qualquer coisa!
Grato desde já
Gustavo
Analista Programador
Respostas
Todas as Respostas
-
Olá gusdorta.
Kra uma vez, estava na mesma sinuca de bico e este krinha me ajudou.
http://it.toolbox.com/blogs/programming-life/reading-email-using-mapi-in-vbnet-5855
http://support.microsoft.com/kb/310244
Att
Nelson Borges - Analista de Sistemas -
Olá Nelson, obrigado pela dica, mas nos artigos não mostra como enviar um email usando MAPI (apesar de mostrar muitas funcionalidades)
Vc ou alguem teria um exemplo de como fazer isso?
Eu preciso somente enviar um email com um anexo, não vai ter tela nada, isso deve ser feito de modo invisível ao usuário.
è urgente...
Qualquer ajuda é bem vinda!
Grato desde já
Gustavo
Analista Programador -
Gustavo,
Bom nos exemplos existe em uma parte que monta o controle MAPI, de qualquer forma este link é mais simples..
http://www.vbdotnetheaven.com/Uploadfile/vkulkarni/MAPIcontrolToSendMail04252005015911AM/MAPIcontrolToSendMail.aspx
Duvidas poste aqui.
Att
Nelson Borges - Analista de Sistemas -
Consegui enviar o email abaixo segue código, no entanto eu tento anexar um arquivo e recebo o erro:
System.MissingMemberException: Public member 'AttachmentIndex' on type 'Message' not found.
Alguem saberia como resolver???
Grato desde já
Gustavo
Private
Sub MapiSendMail() Dim objSession As Object Dim objMessage As Object Dim objRecipient As Object Dim sProfile As String Dim sSubjPrmpt As String Dim sTextPrmpt As String Dim sEmailPrmpt As String Dim sMsgTitle As String ' Leaving sProfile equal to Null will ' force the user to select which Mapi ' profile to use. To keep from being ' prompted, you must supply a valid ' user profile.sProfile =
"Default Outlook Profile"sEmailPrmpt =
"Enter valid Email Name of message recipient:"sSubjPrmpt =
"Enter the subject line for this message:"sTextPrmpt =
"Enter the text for this message:"sMsgTitle =
"Mapi Macro Example" ' Create the Session Object.objSession = CreateObject(
"mapi.session") ' Log on using the session object. ' Specify a valid profile name if you want to ' avoid the logon dialog box.objSession.Logon(profileName:=sProfile)
' Add a new message object to the OutBox.objMessage = objSession.Outbox.Messages.Add
' Set the properties of the message object.objMessage.Subject =
"Formulário Top Idea"objMessage.Text =
"Sua idéia foi enviada com sucesso! <br/> Obrigado pela contribuição. <br/> Equipe Top Idea"objMessage.AttachmentIndex = 0
objMessage.AttachmentPathName =
"C:\formfinal.doc" 'objMessage.AttachmentName = "Motor.bmp" 'objMessage.AttachmentType = 2 ' ATTACHTYPE_SOLE an SOLE is a ' static OLE object attachment
' Add a recipient object to the objMessage.Recipients collection.objRecipient = objMessage.Recipients.Add
objRecipient.RecipIndex = 0
' Set the properties of the recipient object.objRecipient.Name =
"gustavo.dorta@bshg.com"objRecipient.RecipIndex = 1
objRecipient.Name =
"marco.maciel@bshg.com"
objRecipient.Resolve()
' Send the message. Setting showDialog to False ' sends the message without displaying the message ' or requiring user intervention. A setting of True ' displays the message and the user must choose ' to Send from within the message dialog.objMessage.Send(showDialog:=
False)MsgBox(
"Sua idéia foi cadastrada com sucesso!!") ' Log off using the session object.objSession.Logoff()
End Sub
Analista Programador -