2009-01-20 8 views
14

Se me ha encomendado la tarea de optimizar los correos electrónicos HTML para diferentes clientes de correo electrónico/correo web. Solía ​​probar el archivo HTML haciendo un truco en Outlook Express, para que enviara el HTML sin procesar, pero Microsoft parece haber dejado de suministrar Outlook Express ahora (creo que se supone que "Live Mail" lo reemplazará).¿Cuál es una forma rápida y fácil de enviarme correos electrónicos HTML para probarlos?

Así que mi pregunta es, ¿hay una forma simple y rápida de enviar correos electrónicos HTML? Tal vez incluso un programa gratuito que hace el trabajo?

Respuesta

1

A Test Mail Server Tool puede ayudar con eso, si solo necesita recibir y ver los correos electrónicos enviados por su aplicación.

-1

¿Tal vez puedas usar System.Net.Mail en .NET?

Puede leer desde una plantilla de correo electrónico y asignar un cuerpo de MailMessage.

para enviar correo electrónico

  System.Net.Mail.MailMessage msg = CreateMailMessage(); 

      SmtpClient sc = new SmtpClient(); 
      sc.Host = ConfigurationManager.AppSettings["SMTPServer"]; 
      sc.Port = 0x19; 
      sc.UseDefaultCredentials = true; 

      sc.Send(msg); 
4

me gustaría utilizar pitón, aquí en la parte inferior se muestra un ejemplo de cómo crear un correo electrónico HTML con un texto por defecto: http://docs.python.org/library/email-examples.html se puede parametrizar esto, encapsular en funciones, leer el contenido desde archivos, etc. (asegúrese de establecer localhost en "s = smtplib.SMTP ('localhost')" en su servidor smtp)

0

Envío de correo electrónico HTML (a menudo a granel) usando PHPMailer. Me ha funcionado muy bien

1

Si está ejecutando .NET y usted tiene una cuenta de Gmail que esta es una manera fácil

using System.Net; 
using System.Net.Mail; 

var fromAddress = new MailAddress("[email protected]", "From Name"); 
var toAddress = new MailAddress("[email protected]", "To Name"); 
const string fromPassword = "fromPassword"; 
const string subject = "Subject"; 
const string body = "Body"; 

var smtp = new SmtpClient 
      { 
       Host = "smtp.gmail.com", 
       Port = 587, 
       EnableSsl = true, 
       DeliveryMethod = SmtpDeliveryMethod.Network, 
       UseDefaultCredentials = false, 
       Credentials = new NetworkCredential(fromAddress.Address, fromPassword) 
      }; 
using (var message = new MailMessage(fromAddress, toAddress) 
        { 
         Subject = subject, 
         Body = body 
        }) 
{ 
    smtp.Send(message); 
} 

ver Sending email in .NET through Gmail para más detalles

+1

En realidad no hay un servidor SMTP integrado en .Net. Solo clases para interactuar con un servidor SMTP existente. –

+0

Este código necesita ser actualizado. – Crono

+0

actualizado, por lo que los comentarios previos podrían estar fuera de sintonía – inspite

4

Si usted está buscando para probar si aparece un correo electrónico HTML correctamente en varios clientes, usaría sendmail.exe (solo Windows).

Puede guardar un archivo .html y canalizarlo en ese programa en la línea de comandos como el contenido del correo electrónico. Hay opciones de línea de comandos para from/to/subject/server, etc.

Esto le permitiría enviar y reenviar rápidamente correos electrónicos simplemente editando el archivo .html y ejecutando nuevamente la línea de comandos. No se requiere programación.

Editar: hay una herramienta de línea de comandos similar para Linux con el mismo nombre.

0

Un sólo para Windows solución libre en el que normalmente no tiene que instalar nada especial es utilizar ASP o WSH. Opto por JScript en lugar de VBScript:

function sendHtml(recipients, subject, html) { 
    var mail = Server.CreateObject("CDO.Message"); 

    mail.From = "Tester <[email protected]>"; 
    mail.Subject = subject; 
    mail.To = recipients.join(";"); 
    mail.HTMLBody = html; 

    // Do the following if you want to directly use a specific SMTP server 
    mail.Configuration.Fields.Item(
     "http://schemas.microsoft.com/cdo/configuration/sendusing") = 2; 
    mail.Configuration.Fields.Item(
     "http://schemas.microsoft.com/cdo/configuration/smtpserver") 
     = "smtp.example.com"; 
    mail.Configuration.Fields.Item(
     "http://schemas.microsoft.com/cdo/configuration/smtpserverport") 
     = 25; 
    mail.Configuration.Fields.Update(); 

    mail.Send(); 
} 

Nota: Sin embargo, el código HTML puede terminar recibiendo ligeramente reordenada con este enfoque.

1

Creo que puede enviar correos electrónicos html desde el cliente de correo electrónico de Thunderbird de Mozilla.

http://www.mozillamessaging.com/en-US/thunderbird/

Esto es lo que utiliza para enviar mensajes de correo electrónico de prueba. O supongo que también podría usar su proveedor de correo electrónico.

1

Me no incluso ir con cualquier lenguaje de ...

que se detendría en MailChimp y establecer un free account (máximo de 500 suscriptores y 3000 envíos por mes) ... 3000 envía es lo suficiente para probar, ¿verdad? :)

que tiene todas las herramientas que necesita para enviar mensajes de correo electrónico profesional (y tal vez abrir una cuenta a su cliente/amigo para que él/ella puede utilizar MailChimp en sus boletines)

mientras estás en ello , ver su página resources así la herramienta perfecta para saber lo que podemos usar en boletines de noticias usando CampaignMonitor propia Guide to CSS support in email clients

espero que ayude

+1

* caugh * ¿No es posible que trabajes en MailChimp por casualidad ...? – o01

+0

nahh, simplemente un usuario feliz :) y uso Campaign Monitor también: D – balexandre

+0

Toma unos minutos de configuración, pero esta era una forma muy fácil y confiable de enviar correos electrónicos HTML. Simplemente cree una plantilla personalizada, y puede escribir y probar sus propios correos electrónicos HTML. – mlissner

0

muy tarde para la conversación, pero aquí es el método más rápido (aunque lejos de las mejores prácticas) para enviar un correo electrónico HTML:

Ver su rendido HTML en un navegador web (como una página web), luego ctrl+a seleccione la página completa, luego ctrl+c copie y ctrl+v pegue que representa el resultado html en el cuerpo de su correo electrónico. No hay nada más fácil que eso ...

Solo tenga en cuenta que sus imágenes deben estar alojadas si desea que el destinatario las vea.

0
function sendHtml(recipients, subject, html) { 
var mail = Server.CreateObject("CDO.Message"); 

mail.From = "Tester <[email protected]>"; 
mail.Subject = subject; 
mail.To = recipients.join(";"); 
mail.HTMLBody = html; 

// Do the following if you want to directly use a specific SMTP server 
mail.Configuration.Fields.Item(
    "http://schemas.microsoft.com/cdo/configuration/sendusing") = 2; 
mail.Configuration.Fields.Item(
    "http://schemas.microsoft.com/cdo/configuration/smtpserver") 
    = "smtp.example.com"; 
mail.Configuration.Fields.Item(
    "http://schemas.microsoft.com/cdo/configuration/smtpserverport") 
    = 25; 
mail.Configuration.Fields.Update(); 

mail.Send(); 
} 
+0

que chico eres – ayush

1

Rubí variante:

require "mail" 

options = { 
    :address    => "smtp.gmail.com", 
    :port     => 587, 
    :domain    => "smtp.gmail.com", 
    :user_name   => "[email protected]", 
    :password    => "password", 
    :enable_starttls_auto => true, 
    :authentication  => :plain, 
} 

Mail.defaults do 
    delivery_method :smtp, options 
end 

mail = Mail.new do 
    to  "[email protected]" 
    from "Me Me [email protected]" 
    subject "test email" 

    html_part do 
    content_type "text/html; charset=UTF-8" 
    body File.read("index.html") 
    end 
end 

mail.deliver 

No se olvide de permitir el acceso de https://www.google.com/settings/security/lesssecureapps

Cuestiones relacionadas