Buho EnvioCorreo Con los controles MAPI: (PEGO) Prueba esto que te acabo de programar (ejecutalo en un formulario con un control MAPISession llamado msSesion y otro MAPIMEssages llamado mmMensaje): ========= Sub EnviarCorreo() On Error Resume Next 'Variables locales Dim i As Integer 'Inicialización i = 0 'Sesión de correo msSesion.SignOn mmMensaje.SessionID = msSesion.SessionID 'Componer un nuevo mensaje mmMensaje.Compose 'Acuse de recibo mmMensaje.MsgReceiptRequested = True 'Destinatario mmMensaje.RecipIndex = i mmMensaje.RecipType = mapToList mmMensaje.RecipDisplayName = "Uno@tal.es" mmMensaje.ResolveName i = i + 1 'Con copia a mmMensaje.RecipIndex = i mmMensaje.RecipType = mapCcList mmMensaje.RecipDisplayName = "Dos@tal.es" mmMensaje.ResolveName i = i + 1 'Copia oculta mmMensaje.RecipIndex = i mmMensaje.RecipType = mapBccList mmMensaje.RecipDisplayName = "Otro@tal.es" mmMensaje.ResolveName i = i + 1 'Asunto mmMensaje.MsgSubject = "Asunto bla bla" 'Texto del mensaje mmMensaje.MsgNoteText = "Toma un fichero:" & vbCrLf & vbCrLf & " " 'Fichero adjunto mmMensaje.AttachmentIndex = mmMensaje.AttachmentCount mmMensaje.AttachmentPathName = "C:\autoexec.bat" mmMensaje.AttachmentName = "C:\autoexec.bat" mmMensaje.AttachmentType = mapData mmMensaje.AttachmentPosition = Len(mmMensaje.MsgNoteText) - 1 'Presentar la pantalla de redacción de correo mmMensaje.Send True '(o False si quieres que se envíe ' sin que sea visible para el usuario) 'Cerrar sesión de correo msSesion.SignOff Screen.MousePointer = vbDefault End Sub =========