ENVIAR EMAIL. ARQUIVO ANEXO

IDELVAN 14/12/2009 21:30:30
#329688
Olá amigos. Preciso de uma ajuda.
Estou enviando email utilizando o objeto MAPI abaixo segue um exemplo

Private Sub Command1_Click()
MAPISession1.SignOn
MAPIMessages1.SessionID = MAPISession1.SessionID
MAPIMessages1.Compose
MAPIMessages1.RecipAddress = txt_email.Text
MAPIMessages1.MsgSubject = txt_assunto.Text
MAPIMessages1.MsgNoteText = txt_mensagem.Text
[ô]anexa no final da mensagem
MAPIMessages1.AttachmentPosition = Len(MAPIMessages1.MsgNoteText)
[ô]define o tipo de dados do anexo
MAPIMessages1.AttachmentType = 1
[ô]da um nome ao anexo
MAPIMessages1.AttachmentName = [Ô]Anexos[Ô]
[ô]define o caminho e nome do arquivo a anexar
MAPIMessages1.AttachmentPathName = txt_anexo.Text
[ô]envia o arquivo
MAPIMessages1.Send True
MAPISession1.SignOff
End Sub

Private Sub btn_anexo_Click()
CommonDialog1.ShowOpen
sel_anexo = CommonDialog1.FileName
txt_anexo.Text = CommonDialog1.FileName
End Sub

Ocorre um problema
Quanto anexo um arquivo do tipo .jpeg, ele salva o arquivo com a extensão .dat e não abre o arquivo
Alguem poderia me ajudar como eu anexo um arquivo de uma forma correta ?

Abraço.
MARCOSLING 14/12/2009 22:20:03
#329694
tem que ser com MAPI?
IDELVAN 15/12/2009 07:36:24
#329699
Olá Marcos. Obrigado pela sua resposta.

Vc teria uma outra idéia ? Ajude-me por favor !!

Abraços.
TECLA 15/12/2009 09:10:22
#329706
Usando CDOSYS, a rotina seria a seguinte:

Private Sub EnvioDeEmail()
Dim Msg As CDO.Message
Dim Cof As CDO.Configuration
Dim Camp

Set Msg = New CDO.Message
Set Cof = New CDO.Configuration
Set Camp = Cof.Fields


With Camp
.Item(cdoSendUsingMethod) = 2 [ô] cdoSendUsingPort
.Item(cdoSMTPServer) = [Ô]Servidor.SMTP[Ô]
.Item(cdoSMTPConnectionTimeout) = 10 [ô] quick timeout
.Item(cdoSMTPAuthenticate) = 1
.Item(cdoSendUserName) = [Ô]Usuario[Ô]
.Item(cdoSendPassword) = [Ô]Senha[Ô]
.Update

End With

With Msg
Set .Configuration = Cof
.To = [Ô][Ô][Ô]user[Ô][Ô] <email@email.com>[Ô]
.From = [Ô][Ô][Ô]user[Ô][Ô] <email@email.com>[Ô]
.Subject = [Ô]Teste de CDOSYS[Ô]
.AddAttachment ([Ô]C:\Foto\01.JPG[Ô])
.Send
End With

End Sub
IDELVAN 15/12/2009 10:38:31
#329719
Olá Tecla.

Onde eu consigo o CDOSYS ?

Obrigado.
TECLA 15/12/2009 10:52:40
#329724
IDELVAN 15/12/2009 11:14:40
#329739
Perfeito Tecla.. consegui enviar.

Mais uma dúvida apenas.
é possível eu anexar vários documentos para enviar ? Tentei colocando ; no final de cada arquivo e não foi.
Só envia um por vez mesmo ?
Abraços.
NOSREDNA1 16/12/2009 14:52:18
#329841
aew nao consegui enviar... me ajuda, da um error
Run-Time Error [ô]429[ô]
ActiveX component can[ô]t creat object

dai clico em debung

onde ta com erro é:

Set Msg = New CDO.Message
TECLA 16/12/2009 15:29:03
#329845
Citação:

é possível eu anexar vários documentos para enviar ?



Acredito que não...
Sugiro que instrua o usuário a ZIPAR os arquivos que deseja enviar antes de anexar na aplicação.
MARCOSLING 16/12/2009 19:54:20
#329868
Citação:

TECLA escreveu:
é possível eu anexar vários documentos para enviar ?

Acredito que não...
Sugiro que instrua o usuário a ZIPAR os arquivos que deseja enviar antes de anexar na aplicação.



é só repetir o comando

.AddAttachment ()

para cada arquivo
IDELVAN 18/12/2009 09:14:25
#329999
NOSREDNA 1

Amigo

Vc não registrou a DLL.
Copie a DLL CDOSYSTEM.DLL no c:\windows\system32 e registre
regsvr32 [Ô]c:\windows\system\cdosystem.dll[Ô]

Um abraço.


Tecla.
Quero agradecer pela sua ajuda.
Funcionou perfeitamente conforme a sua orientação.

MarcosLing.
Obrigado pela sua orientação também.



Página 1 de 2 [16 registro(s)]
Tópico encerrado , respostas não são mais permitidas