none
Script VBS ou BAT para mandar e-mail

    Question

  •  

    Boa tarde a todos.

     

    Estou com o seguine problema, preciso criar um script BAT ou VBS, que envie um e-mail para mim quando tiver um problema no meu servidor.

     

    Meu servidor tem a opção de rodar programas quando á um falha, porem nao consigo fazer esse script.

     

    Aguardo uma ajuda

     

    Obrigado.

    Monday, April 14, 2008 5:55 PM

Answers

All replies

  • Achei esse script no site da microsoft,

     

    Set objEmail = CreateObject("CDO.Message")
    objEmail.From = "monitor1@fabrikam.com"
    objEmail.To = "admin1@fabrikam.com"
    objEmail.Subject = "Atl-dc-01 down"
    objEmail.Textbody = "Atl-dc-01 is no longer accessible over the network."
    objEmail.Send

     

    Porem quando executo ele da o seguinte erro:

     

    Script: c:\teste.vbs

    linha: 6

    caract: 1

    erro: o valor de configuração "sendUsing" é invalido

     

    Codigo: 80040220

    Origem: CDO.Message.1

     

    Alguem sabe o que esrta acontecendo?

     

    Obrigado

    Monday, April 14, 2008 6:22 PM
  • Ayuso usa esse script aqui e altere o que está em negrito Wink

     

    Set objEmail = CreateObject("CDO.Message")

    objEmail.From = remetente

    objEmail.Subject = "erro"
    objEmail.To = destinatario

    objEmail.Textbody = Body

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

    Monday, April 14, 2008 7:01 PM
  • Belezinha, problema resolvido.

     

    Obrigado

     

    Monday, April 14, 2008 7:39 PM
  • Sem problemas Ayuso, qualquer coisa é só falar Wink

    Monday, April 14, 2008 8:05 PM
  • Neste script tem como incluir um anexo?

     

    Wednesday, April 16, 2008 9:03 PM
  • depois da 5 linhja adicione essa linha Wink

     

    objEmail.AddAttachment "caminho total do arquivo"

     

    Wednesday, April 16, 2008 9:34 PM
  • Blza pessoal...tbm estou precisando do script...e consigo enviar o arquivo de log...

    Mas tem alguma opção para especificar ao script pegar apenas tais linhas do arquivo txt???


    Wednesday, May 07, 2008 4:39 PM
  •  

    Obtive o seguinte erro:

     

    Script: W:\script logon\email.vbs

    Linha: 15

    Caract.: 1

    Erro: O servidor rejeitou um ou mais endereços de destinatario. A resposta do servidor foi:55 5.7.1 Unable to relay for gmagalhaes@faetsa.com.br

    Codigo: 8004020f

    Origem? (null)

    Monday, November 24, 2008 5:48 PM
  • Ayuso usa esse script aqui e altere o que está em negrito Wink

     

    Set objEmail = CreateObject("CDO.Message")

    objEmail.From = remetente

    objEmail.Subject = "erro"
    objEmail.To = destinatario

    objEmail.Textbody = Body

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


    Como faço para setar também e enviar a senha .
     

    Thursday, August 06, 2009 5:32 PM
  • Meu amigo Laerte,

    Eu tb estava precisando de um script que mandasse email por linha de comando e o seu exemplo foi de grande ajuda.
    Estou precisando também, passar parametros para o arquivo ".vbs" e de dentro desse ".vbs" ler esses valores.

    Exemplo:
    Tenho 2 arquivos para serem enviados. Eu tenho um .bat que já sabe o nome deles. Eu precisaria passá-los para o meu ".vbs", que é igual ao que você fez. E com isso usá-los em objEmail.AddAttachment "&1,&2 "

    Agradeço imensamente a ajuda.
    Tuesday, October 06, 2009 7:18 PM
  • Caro Laerte,

     

          Fiz conforme o script porém o simbolo "@" não é reconhecido pelo sistema e quando não o coloco dá uma mensagem informando que ou o remetente ou o destinatário precisa ser informado, teria como ajudar a resolver ?

    Tuesday, December 07, 2010 3:36 AM
  • Caro Laerte,

     

          Fiz conforme o script porém o simbolo "@" não é reconhecido pelo sistema e quando não o coloco dá uma mensagem informando que ou o remetente ou o destinatário precisa ser informado, teria como ajudar a resolver ?

    Coloque o destinatário entre parenteses  "Seu@destinatario".

    Efetue os testes e poste os resultados!

    []'s, 

     


    " Qm tem boca vai a roma, meu fogão tem 6 e não saiu da cozinha ainda"
    Tuesday, December 07, 2010 11:50 AM
  • Caro Marcellus,

     

          Fiz as alterações que você sugeriu e deu a seguinte mensagem:

    Script (caminho e nome do script)
    Linha : 19
    Caract.: 1
    Erro: Não foi possível enviar a mensagem para o servidor SMTP. O código de erro de transporte foi 0x80040217. A resposta do sevidor foi not available

    Código: 80040211
    Origem: (null)

     

    O itrigante é que tenho um outro script aqui que faz basicamente a mesma coisa, porém não pega anexos e funciona perfeitamente. Existe alguma linha onde eu possa indicar configurações de autenticações caso precise ? Desde já agradeço a sua ajuda.

    Thursday, December 09, 2010 4:09 AM
  • Ayuso usa esse script aqui e altere o que está em negrito Wink

     

    Set objEmail = CreateObject("CDO.Message")

    objEmail.From = remetente

    objEmail.Subject = "erro"
    objEmail.To = destinatario

    objEmail.Textbody = Body

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

    Usei exatamente isto que voce sugeriu, e obtive o erro : 

    https://cid-652017541c539f50.photos.live.com/self.aspx/Prints/EnviaEmail.JPG

    Friday, March 04, 2011 10:45 AM
  • Ayuso usa esse script aqui e altere o que está em negrito Wink

     

    Set objEmail = CreateObject("CDO.Message")

    objEmail.From = remetente

    objEmail.Subject = "erro"
    objEmail.To = destinatario

    objEmail.Textbody = Body

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

        aí amigo, usei este mesmo cóigo, porém obtive o erro :

    conforme documentado nesta imagem aqui. http://img231.imageshack.us/img231/2200/enviaemail.jpg



    Friday, March 04, 2011 11:00 AM
  • Ayuso usa esse script aqui e altere o que está em negrito Wink

     

     

    Set objEmail = CreateObject("CDO.Message")

    objEmail.From = remetente

    objEmail.Subject = "erro"
    objEmail.To = destinatario

    objEmail.Textbody = Body

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

        aí amigo, usei este mesmo cóigo, porém obtive o erro :

    conforme documentado nesta imagem aqui. http://img231.imageshack.us/img231/2200/enviaemail.jpg



     

    Se seu servidor SMTP solicitar autenticação (Usuário e senha) vc deverá especificar...

    Esse código é para servidores SMTP que não precisam autenticar.

     

    Veja um exemplo com autenticação...

     

     

    Set objEmail = CreateObject("CDO.Message")
    
    Subjectline = ""
    messagebody = ""
    Subjectline = "Exemplo de subject"
    Messagebody = ""
    			
    			
    
    SMTPServerAddress = "seusmtp"
    
    '*** This section provides the configuration information for the remote SMTP server ***
    
    With objEmail
    
     'DO NOT CHANGE ANYTHING FOR THE FOLLOWING LINE
     .Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
    
     'Name or IP of Remote SMTP Server
     .Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = SMTPServerAddress
    
     'Type of authentication, NONE, Basic (Base64 encoded), NTLM
    .Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoBasic
    
     'Your UserID on the SMTP server
    .Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "usuario"
    
     'Your password on the SMTP server
    .Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "senha"
    
     'Server port (typically 25)
     .Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
    
     'Use SSL for the connection (False or True)
    .Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False
    
     'Connection Timeout in seconds (the maximum time CDO will try to establish a connection to the SMTP server)
     .Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
    
     'DO NOT CHANGE ANYTHING FOR THE FOLLOWING LINE
     .Configuration.Fields.Update
    
     'The line below shows how to add attachment
     '.AddAttachment "C:\test.txt"
    
     'Send text body Email
     'objEmail.Textbody = "Server1 is no longer accessible over the network."
    
     'Send html body Email
     'objEmail.HTMLBody = "<font face=arial color=blue>Server1 is no longer accessible over the network.</font>
    
     'The line below shows how to send a webpage from a remote site
     'objEmail.CreateMHTMLBody "http://www.google.com.hk/"
    
     'The line below shows how to send a webpage from a file on your machine
     'objEmail.CreateMHTMLBody "file://c|/test.htm"
    
    End With
    
    '*** End remote SMTP server configuration section ***
    
    'WScript.Echo "Sending Email..."
    With ObjEmail
     .From = "enviadopor@aseugosto.com.br"
     .To = "seuemail@seudominio.com.br"
     .Subject = subjectline
     .HTMLBody = "<p><b>Sua mensagem HTML</b></p>"
    End With
    'On Error Resume Next
    objEmail.Send
    
    'WScript.Echo "Finished Sending Email."
    Set objEmail = Nothing
    

     

    Tem alguns itens comentados...ex: Anexos...pagina remota....analise o script e poste os resultados!

    []',s


    " Qm tem boca vai a roma, meu fogão tem 6 e não saiu da cozinha ainda"
    Friday, March 04, 2011 4:23 PM
  • pode enviar um exemplo dessa configuração utilizando o Gmail?
    Wednesday, February 13, 2013 11:54 AM