PDA

View Full Version : اطلاعات کامل درباره ارسال Email



mahdi_negahi
چهارشنبه 09 فروردین 1385, 22:41 عصر
سلام دوستان

من یک Help کامل درباره E-mail میخوام به خدا هم جسجو کردم چیز درستی پیدا نکردم اگر می شه مثل تاپیک عکسهای امنیتی همکاری کنید
راستی این تاپیک هم که در بعضی جستجو ها استاد ناصری گذاشتن نیست دیگه
http://www.barnamenevis.org/forum/viewtopic.php?t=15164

nazaninam
چهارشنبه 09 فروردین 1385, 23:18 عصر
میشه توضیح بدی با میل چی کار میخوای بکنی!!

mahdi_negahi
پنج شنبه 10 فروردین 1385, 00:25 صبح
فعلا کار خواسی مد نظرم نیست بیشتر هدفم این است که کدی داشته باشیم که یک میل را از سایت به هر آدرسی بدهد فقط هدف این است که چیزی بدست آوریم که بدون ایراد باشد

nazaninam
پنج شنبه 10 فروردین 1385, 00:45 صبح
Dim objmail As New MailMessage
objmail.From = mfrom
objmail.To = mailto
objmail.Subject = subject
objmail.BodyEncoding = System.Text.Encoding.UTF8
objmail.Body = htmltext
objmail.BodyFormat = MailFormat.Html
SmtpMail.SmtpServer = mailserver


objmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserver", mailserver)
objmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", 25)

objmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", 1)
objmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", mfrom)
objmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", pass)
Dim eclass As New ezora

Try
SmtpMail.Send(objmail)
Catch ex As Exception

End Try




من تاحالا با این مشکلی نداشتم میتونی از irmail هم استفاده کنی

mahdi_negahi
پنج شنبه 10 فروردین 1385, 10:56 صبح
نازنین جان من این sample دارم ولی
ابنها چکار می کنند


objmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserver", mailserver)
objmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", 25)

objmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", 1)
objmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", mfrom)
objmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", pass)

Saeed_Taghvaee
پنج شنبه 10 فروردین 1385, 13:03 عصر
این ها اصل و اسا ارسال میل هستن مجوز های کانفیگ ارسال میل که به CDO معروفند و کم تر کسی تا به حال به این ها توجه میکنه. این مجوز های امنیتی ممکنه روی لوکال نیازی بهش نباشه ولی روی سرور ها اصولا بدون این مجوز های ارسال نمیشن.
ما در این فیلد ها
smtpserver که کاملا واضحه چی هست ،
smtpserverport پورت ارسال میل که واضح چی هست ،
smtpauthenticate سطح امنیتی که اصولا در حالت بیسیک یا 1 ست میشه ،
sendusername یوزر نیم میلمون که همون نام ایمیلمون هست ،
sendpassword ، که پسورد میل مون هست رو ست میکنیم.
تا دقیقا از روی سرور ما میل ها ارسال و از میل ما ارسال بشن .

mahdi_negahi
پنج شنبه 10 فروردین 1385, 13:11 عصر
یک سوال دیگر آیا اگر بخواهیم از SMTP هایی مثل Gmil استفاده کنیم چیزهای بالا فرق میکند

Saeed_Taghvaee
پنج شنبه 10 فروردین 1385, 13:15 عصر
هیچ چیز این کد در همه سرور ها یکسان عمل میکند

mahdi_negahi
پنج شنبه 10 فروردین 1385, 13:18 عصر
می تونی یک نمونه مثلا برای Gmail بگذاری

mahdi_negahi
پنج شنبه 10 فروردین 1385, 13:52 عصر
خوب اینم به سرانجام رسید اینم کدش :


MailMessage mail = new MailMessage();
SmtpMail.SmtpServer="smtp.gmail.com";
mail.Fields.Add( "http://schemas.microsoft.com/cdo/configuration/smtpauthenticate",1 );
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpusessl","true");
mail.Fields.Add( "http://schemas.microsoft.com/cdo/configuration/sendusername","یک email رجستر شده در gmail" );
mail.Fields.Add( "http://schemas.microsoft.com/cdo/configuration/sendpassword","پسورد Email" );
mail.To=txtEmail.Text;
mail.BodyFormat = MailFormat.Html;
mail.Body = "شماره پرونده شما:<b>1</b><br>"+"پسورد شما:2";
mail.From = "mahdi.negahi@gmail.com";
SmtpMail.Send(mail);
توجه کنید شما هر smtp را که می دهید باید یک email در همان smtp داشته باشید یعنی اگر yahoo می دهید با در کد زیر یک email رجستر شده در yahoo دهید

mail.Fields.Add( "http://schemas.microsoft.com/cdo/configuration/sendusername","یک email رجستر شده در yahoo" );

کد زیر برای smtp هایی است که از ssl استفاده می کنند مثل gmail


mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpusessl","true");

mahdi_negahi
پنج شنبه 10 فروردین 1385, 13:53 عصر
راستی کد بالا امتحان شده است

Saeed_Taghvaee
پنج شنبه 10 فروردین 1385, 13:59 عصر
اینم یه تابع ویبی دات نت برای افرادی که میخواهند در قسمت های مختلف میل بفرستند :

Sub doSendMail(ByVal body As String, ByVal From As String, ByVal tom As String, ByVal smtp As String, ByVal pass As String, ByVal subject As String)
Dim objmail As New MailMessage
objmail.From = From
objmail.To = tom
objmail.Subject = subject
objmail.BodyEncoding = System.Text.Encoding.UTF8
objmail.Body = body
objmail.BodyFormat = MailFormat.Html
SmtpMail.SmtpServer = smtp


objmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserver", smtp)
objmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", 25)

objmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", 1)
objmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", From)
objmail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", pass)

Try
SmtpMail.Send(objmail)
Catch ex As Exception

End Try
End Sub
اینم یه نمونه ساده :

Dim bd As String
bd = "<html><body><b align=center>Test Mail</b></body></html>"
doSendMail(bd, "Saeed@yahoo.com", "Ali.ss@gmail.com", "mx1.mail.yahoo.com", "12345", "TestMail")