Send_EmailDLL

Plugins y todo lo relacionado para Autoplay Media Studio.
Saludos gente , aquí os dejo una dll que he realizado para mandar emails desde ams , la verdad es que se puede hacer mejor y pienso añadirle mas parámetros y opciones , también creo que debería realizar alguna devolución cuando manda los correos , seguiré aprendiendo el código para poder mejorarla.

La dll permite enviar desde una cuenta gmail o hotmail .
solo dispone de una función "SendEmail" con los siguientes parámetros:

string From : string con la cuenta gmail desde donde enviamos el email.
string To : Destinatarios es un string delimitado con las cuentas que queramos enviar el correo ejemplo: "[email protected],[email protected],[email protected]"
string NameFrom : Es un nombre o referencia que aparcecera delante del remitente ejemplo: rafael <<[email protected]>>
string Pass : El password de nuestra cuenta gmail, necesitamos autentificacion para usar el servidor smtp.gmail.com
string Subject : Titulo o asunto del correo
string body : correo en si
string Attachments : string con las rutas d elos archivos a adjuntar delimitados por ',' ejemplo : " path1, path2, path3" de los archivos adjuntados.
string Host : Dos opciones de servidor de salida de correo para GMail : "smtp.gmail.com" y para Hotmail: "smtp.live.com"
Retorno :
booleano Si el correo se ha enviado correctamente nos retorna true, en caso de error false .

Source code:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Net.Mail;
using System.Net.Mime;
using RGiesecke.DllExport;

namespace E_Mail
{
internal static class UnmanagedExports
{

[DllExport("SendEmail", CallingConvention = System.Runtime.InteropServices.CallingConvention.StdCall)]

static bool SendEmail(string FromGmail, string Name,string pass, string To, string subject, string message , string AttachmentsFiles, string host)
{
int port;
switch(host){
case "smtp.gmail.com":
host = "smtp.gmail.com";
port=587;
break;
case "smtp.live.com":
host = "smtp.live.com";
port=25;
break;
default :
host = "smtp.gmail.com";
port = 587;
break;

}


MailMessage mail = new MailMessage();
SmtpClient SmtpServer = new SmtpClient();
SmtpServer.Credentials = new System.Net.NetworkCredential(FromGmail, pass);
SmtpServer.Port =port;
SmtpServer.Host = host;
SmtpServer.EnableSsl = true;
mail = new MailMessage();
String[] addr =To.Split(',');
try
{
mail.From = new MailAddress(FromGmail, Name, System.Text.Encoding.UTF8);
Byte i;
for (i = 0; i < addr.Length; i++)
mail.To.Add(addr);
mail.Subject = subject;
mail.Body = message;

if (AttachmentsFiles != "")

{
String[] att = AttachmentsFiles.Split(',');
foreach (string s in att)

if (s.Trim() != "")
mail.Attachments.Add(new Attachment(s));

}

mail.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;
mail.ReplyTo = new MailAddress(To);
SmtpServer.Send(mail);
return true;
}
catch (Exception ex)
{
return false;
}
}

}
}



Captura :

Imagen

Apz incluye la dll en Autoplay/Docs :


-=-=-= Update 1.0.0.3=-=-=-

Cambios :

- Añadido posibilidad de envió desde cuentas hotmail.
- Cambio de retorno de la dll a boleano.
- Nuevo parámetro host.

-=-=-= Update 1.0.0.1=-=-=-

Cambios :

- añadido retorno de errores y algún arreglillo de script

Descarga :

HIDE: ON
Hidebb Message Hidden Description
genial amigo yo tenia una apz de ir creo que mandaba correos también pero con cuentas popup, bueno se te agradece tan buen aporte sin duda sera de mucha ayudara para muchos.
gracias
interesante plugin pajaro!
gracias
Update 1.0.01
good
thank you for this dll
this dll can hide the send and continue work with send email one time ?
Usando Sabiamente es Dll ;) tankes
o.O muchas gracias! me servirá.
Vemos... puede servir para un proyecto que deseo realizar
gracias
thanks
Muy buen, pero buen aporte!
it's a good dl ..thanx :lol:
bravisimo
thanks mate
Thank you
wooow .. it's nice