none
Como quitar mensajes de alerta en Outlook ??

    Question

  • Hola que tal comunidad ed MSDN

     

    tengo un pequeño problema cuando quiero enviar correos masivamente.

     

    Hice una macro en el outlook que te hace el mensaje y te adjunta una imagen .jpg y haveces envio 2000 a 5000 correos por que es de mi trabajo 

    pero cuando enpiezo a enviar me sale un recuadro que dice que un programa intenta enviar un mensaje en mi nombre que posiblemente sea virus  que si lo quiero enviar o no y la verdad precionar eso cada 5 segundos es molesto. Mi duda es 

     

    Abra una forma de quitar ese mensaje de alerta para poder enviar todos los correos de un golpe y no estar dando click's,

     

    Bueno gracias comunidad

    Saturday, June 26, 2010 10:16 PM

Answers

  • Hola
    Tampoco era mi intención parecer agresivo.
    ¿Y el sistema operativo...? imagino que XP o inferior.
    En http://www.utterangel.com/UtterAngel/utterangel.aspx?cat=acc tienes un muy buen ejemplo de como mandar un correo usando CDO. Con lo que te han comentado, y lo que viene en dicho ejemplo, tienes más que suficiente.

    Salu2,


    José Mª Fueyo [MS MVP Access]
    Monday, July 12, 2010 7:26 AM
  • Esta función, recibe los parámetros necesarios para enviar correo electrónico. Fíjate que hay un campo archivo optional, que serìa la ruta y nombre del archivo que deseas adjuntar (de haberlo). Crea una referencia a Microsoft CDO.

    Email y clave, son los datos de la cuenta del remitente. Correo es la del destinatario. Está configurada para GMail (remitente, claro). Lo que hago es seleccionar de una lista (todos o algunos), introduzco asunto, cuerpo del correo, y para cada registro se envía los datos a esta función. Podrías mejorarla, deteniendo el proceso si no hay coenxión, etc. Yo lo controlo en el form ;

    Function envia_email(correo As String, periodo As String, cuerpo As String, email As String, clave As String, Optional archivo As String) As integer
    On Error Resume Next
    'envia_email = 0
    'Dim Obj_Email
    'Dim iConf
    'Dim Flds
    'Dim strHTML
    DoCmd.Hourglass True

    Const cdoSendUsingPort = 465

    'Set Obj_Email = CreateObject("CDO.Message")
    'Set iConf = CreateObject("CDO.Configuration")
    'Set Flds = iConf.Fields
    Const cdoSMTPServer = "http://schemas.microsoft.com/cdo/configuration/smtpserver"
    Const cdoSendUsingMethod = "http://schemas.microsoft.com/cdo/configuration/sendusing"

        Dim Obj_Email As CDO.Message
        ' Crea un Nuevo objeto CDO.Message
        Set Obj_Email = New CDO.Message
       
        ' Indica el servidor Smtp para poder enviar el Mail ( puede ser el nombre _
          del servidor o su dirección IP )
        Obj_Email.Configuration.Fields(cdoSMTPServer) = "smtp.gmail.com"
       
        Obj_Email.Configuration.Fields(cdoSendUsingMethod) = 2
       
        ' Puerto. Por defecto se usa el puerto 25, en el caso de Gmail se usan los puertos _
          465 o  el puerto 587 ( este último me dio error )
       
        Obj_Email.Configuration.Fields.Item _
            ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = cdoSendUsingPort

       
        ' Indica el tipo de autentificación con el servidor de correo _
         El valor 0 no requiere autentificarse, el valor 1 es con autentificación
        Obj_Email.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/" & _
                    "configuration/smtpauthenticate") = True 'Abs(Usar_Autentificacion)
           
       
            ' Tiempo máximo de espera en segundos para la conexión
        Obj_Email.Configuration.Fields.Item _
            ("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 30

       
        ' Configura las opciones para el login en el SMTP
        'If Usar_Autentificacion Then

        ' Id de usuario del servidor Smtp ( en el caso de gmail, debe ser la dirección de correro _
         mas el @gmail.com )
        Obj_Email.Configuration.Fields.Item _
            ("http://schemas.microsoft.com/cdo/configuration/sendusername") = email

        ' Password de la cuenta
        Obj_Email.Configuration.Fields.Item _
            ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = clave

        ' Indica si se usa SSL para el envío. En el caso de Gmail requiere que esté en True
        Obj_Email.Configuration.Fields.Item _
            ("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
       'End If
       

        ' *********************************************************************************
        ' Estructura del mail
        '**********************************************************************************
       
        ' Dirección del Destinatario
        Obj_Email.To = correo
       
        ' Dirección del remitente
        Obj_Email.From = email
       
        ' Asunto del mensaje
        Obj_Email.Subject = periodo
       
        ' Cuerpo del mensaje
        'cadena = "<HTML><HEAD></HEAD><BODY bgcolor=""#fccccc""><CENTER><H2>VERSIÓN DE EVALUACIÓN</H2><BR>"
        'cadena = cadena & "<H2>Servicio Exclusivo de Envío de Recibos</H2>"
        'cadena = cadena & "<H3>PARA EL " & ConjuntoSel & "</h3></center><br><br><br>"
        'cadena = cadena & "<p><p><p><strong>Ver archivo adjunto.</strong><br><br><br>"
       
        cadena = "<table background=""http://www.tudireccionweb.com.ve/archivos/aviso_cobro.png""><CENTER><BR>"
        cadena = cadena & "<H2>Servicio Exclusivo de Envío de Recibos</H2>"
        cadena = cadena & "<H3>PARA EL " & ConjuntoSel & "</h3></center><br><br><br>"
        cadena = cadena & "<p><p><p><strong>Ver archivo adjunto.</strong><br><br><br>"
        cadena = cadena & "<p><p>Tecnolog&iacute;a desarrollada por www.tucondominioaldia.com.ve - mas informaci&oacute;n: <a mailto=""tudirecciondecorreo@gmail.com"" target=_blank>tudirecciondecorreo@gmail.com</a>-0414-00000000 / 0412-00000000<p></p><hr>"
     
        Obj_Email.HTMLBody = cadena & cuerpo & "</table>"
       
           
        'Ruta del archivo adjunto
       
        If archivo <> vbNullString Then
            Obj_Email.AddAttachment (archivo)
        End If
       
        ' Actualiza los datos antes de enviar
        Obj_Email.Configuration.Fields.Update
       
        On Error Resume Next
        ' Envía el email
        Obj_Email.Send
       
       
        If Err.Number = 0 Then
          Enviar_Mail_CDO = True

           envia_email=1
        Else
            'Debug.Print Err.Number

    envia_email=0
            Select Case Err.Number
                Case -2147220973
                    MsgBox " No hay conexión a internet. Proceso cancelado.", vbCritical, "Error al enviar correo"
                    envia_email = 0
                Case -2147220979
                    MsgBox " Debe introducir en el formulario de Información" & vbCrLf _
                        & "del Condominio, un email de GMail y una contraseña." & vbCrLf _
                        & "Proceso cancelado.", vbCritical, "Error al enviar correo"
                    envia_email = 0
                Case -2147220975
                    MsgBox " La dirección de correo del condominio y/o la contraseña" & vbCrLf _
                        & "no son correctas. Revise el formulario de condominio.", vbCritical, " No se envió el correo "
                    envia_email = 0
            Case Else
                MsgBox Err.Description, vbCritical, " No se envió el correo. "
            End Select
        End If
       
        ' Descarga la referencia
        If Not Obj_Email Is Nothing Then
            Set Obj_Email = Nothing
        End If
       
        On Error GoTo 0
        DoCmd.Hourglass False
    End Function

    Sunday, July 11, 2010 1:27 AM

All replies

  • Hola

    ¿Como haces el envío de correos?

    Salu2


    José Mª Fueyo [MS MVP Access]
    Sunday, June 27, 2010 12:50 PM
  • Hola que tal mira este es el codigo que realize para enviar los mails; recordemos que esto esta hecho en el editor de macros de outlook

    Muchas gracias por la ayuda

    Dim i As Integer
    Dim iniciar As Integer
    Dim texto1, texto2, texto3 As String
    Dim arregloMail(5000, 2) As String
    --------------------------------------------------------------------------------------------------------------------------
    Sub enviaMail()
    Dim valida As Boolean
    Dim olApp As Outlook.Application
    Dim objNewMail(5000) As Outlook.MailItem
    Dim opcion As Integer
    
    valida = False
    
    
    i = 0
      Close
    Open "c:\envios\cuentas.txt" For Input As #1
    Open "c:\envios\correos.txt" For Input As #2
    Open "c:\envios\folios.txt" For Input As #3
    Open "c:\envios\envios.txt" For Output As #4
    Open "c:\envios\html.txt" For Input As #5
    Line Input #5, encabeza
    cuenta = 0
    Do While Not EOF(1)
      
      Line Input #1, arregloMail(i, 0) 'CUENTA
      Line Input #2, arregloMail(i, 1) 'CORREO
      Line Input #3, arregloMail(i, 2) 'FOLIO
      imagen = "C:\envios\" & arregloMail(i, 0) & ".jpg" 'IMAGEN
      '---------------------------------------------
    
      
      '---------------------------------------------
      
      
      texto1 = " SE ENVIA LA PRESENTE NUM. <strong>" & arregloMail(i, 0) & "</strong>, A PETICIÓN DEL INTERESADO Y PARA LOS FINES LEGALES QUE A ESTE CONVENGAN."
      texto2 = "<HR><UL><LI><strong>POR FAVOR NO RESPONDA A ESTE MAIL; ESTE CORREO HA SIDO GENERADO AUTOMÁTICAMENTE POR LO QUE NO EMITE RESPUESTAS."
      texto3 = "PARA CUALQUIER DUDA O ACLARACIÓN FAVOR DE COMUNICARSE AL -20 Y DEL INTERIOR DE LA REPUBLICA AL 0040</strong></LI></UL></HR></span>"
      
      Set olApp = New Outlook.Application
      Set objNewMail(i) = olApp.CreateItem(olMailItem)
      '------------------------PREPARACION DEL CORREO
      objNewMail(i).To = arregloMail(i, 1)
      objNewMail(i).HTMLBody = encabeza & Now & "<p>" & texto1 & "<p>" & texto2 & texto3 & "</span></p></body></html>"
      objNewMail(i).Subject = "TITULO DEL MESAJE"
      
      objNewMail(i).Attachments.Add (imagen)
      
      
      
      
      
      '--------------------------------FIN DEL CORREO
      archivo = i & ".- " & arregloMail(i, 0) & "  " & arregloMail(i, 2) & "  " & Now & vbTab & arregloMail(i, 1)
      
      frmEnviaV2.ListaCorreos.AddItem (archivo)
      i = i + 1
      
    Loop
      
      opcion = MsgBox("Se procesaron " & i & " Correos para enviar" & vbCr & "El dia " & Date & vbCr & "Preciones Aceptar para continuar", vbOKCancel)
    
      
      
      '-----------------------------------ENVIAR CORREOS
      i = i - 1
    For iniciar = 0 To i
    
      '+++EVENTO CANCELADO
        If opcion = 2 Then
          MsgBox "Se cancelaron los envios"
          frmEnviaV2.StatusBar1.Panels.Item(3).Text = "Evento Cancelado por el usuario"
          frmEnviaV2.Label5.Enabled = True
          Exit For
        End If
      archivo = iniciar & ".- " & arregloMail(iniciar, 0) & "  " & arregloMail(iniciar, 2) & "  " & Now & vbTab & arregloMail(iniciar, 1)
        
      frmEnviaV2.ListaCorreos.RemoveItem (iniciar)
      frmEnviaV2.ListaCorreos.AddItem "Procesando. . ." & vbTab & archivo, iniciar
      frmEnviaV2.StatusBar1.Panels.Item(3).Text = "Enviando Mail en lista No. " & iniciar
      
      
      
      objNewMail(iniciar).Send '++++++ENVIAR+++++
      
       
      Print #4, archivo
    
      frmEnviaV2.Label12.Enabled = True
      frmEnviaV2.Frame1.Caption = "Elementos Enviados     " & iniciar & "/" & i
      frmEnviaV2.ListaCorreos.RemoveItem (iniciar)
      frmEnviaV2.ListaCorreos.AddItem "Enviado • " & vbTab & archivo, iniciar
      
      
      
    Next
      '-----------------------------------FIN ENVIAR CORREOS
      Set olApp = Nothing
      Set objNewMail(i) = Nothing
      Close
      
    End Sub
    --------------------------------------------------------------------------------------------------------------------------
    Function abrirArchivos()
    Close
    Open ("c:\envios\envios.txt") For Input As #5
    Do While Not EOF(5)
      Line Input #5, nuevaLinea
      frmenvios.verArchivo = frmenvios.verArchivo & vbCr & nuevaLinea
      
    Loop
    Close
    End Function

    Tuesday, June 29, 2010 4:51 AM
  • Hola
    Mira a ver sí esto te puede da información al respecto: http://www.outlookcode.com/article.aspx?id=52
    Aparte, tienes la opción de usar un control smtp (que funciona rodeando Outlook). Un ejemplo lo tienes en http://www.ostrosoft.com/smtp_component.asp

    Suerte,

     


    José Mª Fueyo [MS MVP Access]
    Tuesday, June 29, 2010 9:36 AM
  • Hola, yo los envío utilizando la librería CDONT, y evito esos mensajes. Lo mejor, es que utilizo mi base de datos para enviar los correos.

    Puedes autenticarlos, de manera que van directamente a la bandeja de entrada.

    Cordialmente, carlos

    Saturday, July 10, 2010 3:19 PM
  • crees que me puedas ayudar con es problema

    ??

     

     

    Gracias

    Saturday, July 10, 2010 8:26 PM
  • Esta función, recibe los parámetros necesarios para enviar correo electrónico. Fíjate que hay un campo archivo optional, que serìa la ruta y nombre del archivo que deseas adjuntar (de haberlo). Crea una referencia a Microsoft CDO.

    Email y clave, son los datos de la cuenta del remitente. Correo es la del destinatario. Está configurada para GMail (remitente, claro). Lo que hago es seleccionar de una lista (todos o algunos), introduzco asunto, cuerpo del correo, y para cada registro se envía los datos a esta función. Podrías mejorarla, deteniendo el proceso si no hay coenxión, etc. Yo lo controlo en el form ;

    Function envia_email(correo As String, periodo As String, cuerpo As String, email As String, clave As String, Optional archivo As String) As integer
    On Error Resume Next
    'envia_email = 0
    'Dim Obj_Email
    'Dim iConf
    'Dim Flds
    'Dim strHTML
    DoCmd.Hourglass True

    Const cdoSendUsingPort = 465

    'Set Obj_Email = CreateObject("CDO.Message")
    'Set iConf = CreateObject("CDO.Configuration")
    'Set Flds = iConf.Fields
    Const cdoSMTPServer = "http://schemas.microsoft.com/cdo/configuration/smtpserver"
    Const cdoSendUsingMethod = "http://schemas.microsoft.com/cdo/configuration/sendusing"

        Dim Obj_Email As CDO.Message
        ' Crea un Nuevo objeto CDO.Message
        Set Obj_Email = New CDO.Message
       
        ' Indica el servidor Smtp para poder enviar el Mail ( puede ser el nombre _
          del servidor o su dirección IP )
        Obj_Email.Configuration.Fields(cdoSMTPServer) = "smtp.gmail.com"
       
        Obj_Email.Configuration.Fields(cdoSendUsingMethod) = 2
       
        ' Puerto. Por defecto se usa el puerto 25, en el caso de Gmail se usan los puertos _
          465 o  el puerto 587 ( este último me dio error )
       
        Obj_Email.Configuration.Fields.Item _
            ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = cdoSendUsingPort

       
        ' Indica el tipo de autentificación con el servidor de correo _
         El valor 0 no requiere autentificarse, el valor 1 es con autentificación
        Obj_Email.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/" & _
                    "configuration/smtpauthenticate") = True 'Abs(Usar_Autentificacion)
           
       
            ' Tiempo máximo de espera en segundos para la conexión
        Obj_Email.Configuration.Fields.Item _
            ("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 30

       
        ' Configura las opciones para el login en el SMTP
        'If Usar_Autentificacion Then

        ' Id de usuario del servidor Smtp ( en el caso de gmail, debe ser la dirección de correro _
         mas el @gmail.com )
        Obj_Email.Configuration.Fields.Item _
            ("http://schemas.microsoft.com/cdo/configuration/sendusername") = email

        ' Password de la cuenta
        Obj_Email.Configuration.Fields.Item _
            ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = clave

        ' Indica si se usa SSL para el envío. En el caso de Gmail requiere que esté en True
        Obj_Email.Configuration.Fields.Item _
            ("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
       'End If
       

        ' *********************************************************************************
        ' Estructura del mail
        '**********************************************************************************
       
        ' Dirección del Destinatario
        Obj_Email.To = correo
       
        ' Dirección del remitente
        Obj_Email.From = email
       
        ' Asunto del mensaje
        Obj_Email.Subject = periodo
       
        ' Cuerpo del mensaje
        'cadena = "<HTML><HEAD></HEAD><BODY bgcolor=""#fccccc""><CENTER><H2>VERSIÓN DE EVALUACIÓN</H2><BR>"
        'cadena = cadena & "<H2>Servicio Exclusivo de Envío de Recibos</H2>"
        'cadena = cadena & "<H3>PARA EL " & ConjuntoSel & "</h3></center><br><br><br>"
        'cadena = cadena & "<p><p><p><strong>Ver archivo adjunto.</strong><br><br><br>"
       
        cadena = "<table background=""http://www.tudireccionweb.com.ve/archivos/aviso_cobro.png""><CENTER><BR>"
        cadena = cadena & "<H2>Servicio Exclusivo de Envío de Recibos</H2>"
        cadena = cadena & "<H3>PARA EL " & ConjuntoSel & "</h3></center><br><br><br>"
        cadena = cadena & "<p><p><p><strong>Ver archivo adjunto.</strong><br><br><br>"
        cadena = cadena & "<p><p>Tecnolog&iacute;a desarrollada por www.tucondominioaldia.com.ve - mas informaci&oacute;n: <a mailto=""tudirecciondecorreo@gmail.com"" target=_blank>tudirecciondecorreo@gmail.com</a>-0414-00000000 / 0412-00000000<p></p><hr>"
     
        Obj_Email.HTMLBody = cadena & cuerpo & "</table>"
       
           
        'Ruta del archivo adjunto
       
        If archivo <> vbNullString Then
            Obj_Email.AddAttachment (archivo)
        End If
       
        ' Actualiza los datos antes de enviar
        Obj_Email.Configuration.Fields.Update
       
        On Error Resume Next
        ' Envía el email
        Obj_Email.Send
       
       
        If Err.Number = 0 Then
          Enviar_Mail_CDO = True

           envia_email=1
        Else
            'Debug.Print Err.Number

    envia_email=0
            Select Case Err.Number
                Case -2147220973
                    MsgBox " No hay conexión a internet. Proceso cancelado.", vbCritical, "Error al enviar correo"
                    envia_email = 0
                Case -2147220979
                    MsgBox " Debe introducir en el formulario de Información" & vbCrLf _
                        & "del Condominio, un email de GMail y una contraseña." & vbCrLf _
                        & "Proceso cancelado.", vbCritical, "Error al enviar correo"
                    envia_email = 0
                Case -2147220975
                    MsgBox " La dirección de correo del condominio y/o la contraseña" & vbCrLf _
                        & "no son correctas. Revise el formulario de condominio.", vbCritical, " No se envió el correo "
                    envia_email = 0
            Case Else
                MsgBox Err.Description, vbCritical, " No se envió el correo. "
            End Select
        End If
       
        ' Descarga la referencia
        If Not Obj_Email Is Nothing Then
            Set Obj_Email = Nothing
        End If
       
        On Error GoTo 0
        DoCmd.Hourglass False
    End Function

    Sunday, July 11, 2010 1:27 AM
  • Hola

    Aparte que no indicas sí te sirve o no lo que te mostré, tampoco nos indicas que sistema operativo usas ni que versión de Office utilizas.
    A partir de versiónes superiores a la 2007, ya no se distribuye CDONTS, tienes que bajarla de éste link:
    http://tinyurl.com/2whdhc5

    Salu2,


    José Mª Fueyo [MS MVP Access]
    Sunday, July 11, 2010 8:26 PM
  • o si perdon no es necesario la agrecividad  y por otro lado es office 2003
    Sunday, July 11, 2010 10:13 PM
  • Hola
    Tampoco era mi intención parecer agresivo.
    ¿Y el sistema operativo...? imagino que XP o inferior.
    En http://www.utterangel.com/UtterAngel/utterangel.aspx?cat=acc tienes un muy buen ejemplo de como mandar un correo usando CDO. Con lo que te han comentado, y lo que viene en dicho ejemplo, tienes más que suficiente.

    Salu2,


    José Mª Fueyo [MS MVP Access]
    Monday, July 12, 2010 7:26 AM
  • Sola para cerrar. La ventana que salía al enviar el correo no sale en versión 2007 de office. Gracias por su apoyo saludos
    Wednesday, August 25, 2010 2:10 PM