Ir ao conteúdo

Posts recomendados

Postado

Boa tarde pessoal,

 

Tenho o seguinte script para enviar e-mails e gostaria de adicionar um anexo, não achei nada no Google que funcione.

 

Usei o seguinte comando objMessage.AddAttachment wscript.Arguments.Item, mas está dando erro.

 


Set objEmail = CreateObject("CDO.Message")

objEmail.From = "REMETENTE"

objEmail.Subject = "ASSUNTO"
objEmail.To = "DESTINATÁRIO"

objMessage.AddAttachment wscript.Arguments.Item = "ANEXO"

objEmail.Textbody = "Teste VBS"

objEmail.Configuration.Fields.Item _
 ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
objEmail.Configuration.Fields.Item _
 ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = _
"SERVIDOR"
objEmail.Configuration.Fields.Item _
 ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
objEmail.Configuration.Fields.Update
objEmail.Configuration.Fields.Update
objEmail.Send

 

Postado

@Basole Eu adicionei esse código e deu o seguinte erro.

 

Screenshot_1.png

Consegui enviar o e-mail com o código

 

Dim sAttachment
sAttachment = "Caminho do arquivo"

 

Mas o anexo NÂO chegou.

O erro foi meu, eu estava colocando 

 

objEmail.AddAttachment  = "Caminho do arquivo"

 

e não

 

objEmail.AddAttachment "Caminho do arquivo"

 

Não precisa do sinal de =

  • Curtir 1
Postado

Consegui fazer também, para mim o problema era a porta usada. Apesar de falarem que podia usar porta 465 ou 587 eu coloquei 587 ai só depois de tentar bastante troquei para 465 e vi que na verdade só a 465 funcionava.

Postado

Nesse mesmo script como faço para colocar a senha do remetente do e-mail?

 


Set objEmail = CreateObject("CDO.Message")

objEmail.From = "borges.junior18@gmail"

objEmail.Subject = "Teste"
objEmail.To = "[email protected], [email protected]"


objEmail.AddAttachment "D:\Symbol ls2208.pdf"

objEmail.Textbody = "Teste de e-mail"

objEmail.Configuration.Fields.Item _
 ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
objEmail.Configuration.Fields.Item _
 ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = _
"smtp.gmail.com"
objEmail.Configuration.Fields.Item _
 ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
objEmail.Configuration.Fields.Update
objEmail.Configuration.Fields.Update
objEmail.Send

 

Postado

@Basole

Set objEmail = CreateObject("CDO.Message")

objEmail.From = "borges.junior18@gmail"

objEmail.Subject = "Teste"
objEmail.To = "[email protected], [email protected]"


objEmail.AddAttachment "D:\Symbol ls2208.pdf"

objEmail.Textbody = "Teste de e-mail"

objEmail.Configuration.Fields.Item_
 ("http://schemas.microsoft.com/cdo/configuration/sendpassword")= "MINHA SENHA"


objEmail.Configuration.Fields.Item _
 ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
 
 
objEmail.Configuration.Fields.Item _
 ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = _
"smtp.gmail.com"


objEmail.Configuration.Fields.Item_
 ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
objEmail.Configuration.Fields.Update
objEmail.Configuration.Fields.Update
objEmail.Send

 

Screenshot_1.png

Estou recebendo o seguinte erro.

Postado
2 horas atrás, Junior Borges disse:

Screenshot_1.png

Estou recebendo o seguinte erro.

No comando dessa linha falta um espaço entre item e underline, por isso acontece o erro,

 

objEmail.Configuration.Fields.Item _
 ("http://schemas.microsoft.com/cdo/configuration/sendpassword")= "MINHA SENHA"

 

  • 6 meses depois...
Postado

@ricardo_br,

 

Nesse script como faço para enviar mais de um arquvivo de uma pasta ?

 

Set objEmail = CreateObject("CDO.Message")

objEmail.From = "borges.junior18@gmail"

objEmail.Subject = "Teste" objEmail.To = "[email protected], [email protected]"

 

objEmail.AddAttachment "D:\Symbol ls2208.pdf" e "D:\Symbol ls2209.pdf" 

 

objEmail.Textbody = "Teste de e-mail"

objEmail.Configuration.Fields.Item_ ("http://schemas.microsoft.com/cdo/configuration/sendpassword")= "MINHA SENHA"

objEmail.Configuration.Fields.Item _ ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2

objEmail.Configuration.Fields.Item _ ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = _ "smtp.gmail.com"

objEmail.Configuration.Fields.Item_ ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25

objEmail.Configuration.Fields.Update objEmail.Configuration.Fields.Update objEmail.Send

Postado

@ricardo_br Teria como enviar na mesma linha ? 

 

porque aqui eu tenho um script que concatena o nome dos arquivo em uma variavel, por exemplo "arquivo" onde esse arquivo é igual à "D:\Symbol ls2208.pdf , D:\Symbol ls2209.pdf",  mais naão sei se a sintaxe é dessa forma.

Postado

@ricardo_br é o mesmo, acredito que o separador em verde que estou usado errado.

 

'Declarando as variaveis internas leitura dos arquivos

Dim arquivos

Set objFSO = CreateObject("Scripting.FileSystemObject")

 

'Setando pasta de origem

objStartFolder = "C:\TESTE\ORIGEM\"

Set objFolder = objFSO.GetFolder(objStartFolder)

 

'Setando pasta de Destino 

pastaDestino = "C:\TESTE\DESTINO\"

 

'Listando todos os arquvios da pasta e contatenando em um unico nome para envio por e-mail 

Set colFiles = objFolder.Files

For Each objFile in colFiles

    If arquivos = "" Then

    arquivos = objStartFolder & objFile.Name

    Else    

    arquivos = arquivos & " | " & objStartFolder & objFile.Name 

    End If

    arquivo = objStartFolder & objFile.Name

    objFSO.CopyFile arquivo, pastaDestino

 

Next

 

'Envio por e-Mail vbScript

' Declarando as variaveis internas do envio por e-mail vbScript

Set emailObj      = CreateObject("CDO.Message")

emailObj.From     = "[email protected]"

emailObj.To       = "[email protected]"

emailObj.Subject  = "Testando"

emailObj.TextBody = "Teste "&Date()&" "&Time()

 

emailObj.AddAttachment arquivos

 

Set emailConfig = emailObj.Configuration

emailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmail.com"

emailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465

emailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing")    = 2  

emailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1  

emailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpusessl")      = true 

emailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendusername")    = "[email protected]"

emailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendpassword")    = "password"

emailConfig.Fields.Update

 

emailObj.Send

 

If err.number = 0 then Msgbox "Done"

 

'Realizando historico de arquivos e deletando da pasta atual.

Const DeleteReadOnly = TRUE

For Each objFile in colFiles

arquivo = objStartFolder & objFile.Name

objFSO.DeleteFile(arquivo), DeleteReadOnly

 

Next

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!