PDA

View Full Version : مشکل ارسال ایمیل در دات نت



brida_kh
دوشنبه 26 دی 1384, 12:26 عصر
با سلام .
من یک فرم ارسال ایمیل ساختم . وقتی که آدرس ایمیل تحت سایت رو میدم ایمیل به درستی ارسال میشه اما وقتی ایمل سایت یاهو یا گوگل یا هات میل رو میدم این خطا رو میده :
The server rejected one or more recipient addresses. The server response was: 550 5.7.1 No mailbox found


روی همین هاست یه صفحه با asp ساختم که این مشکلو نداشته و ایمیل رو به درستی رو هر سایتی ارسال میکنه!!!!
آیا تنظیمات خاصی هست برای AUthentication که من انجام بدم ؟ یا کلا" این هاست نمیتونه این سرویس رو بده ؟ در حال حاضر بهترین کاری که میشه انجام داد چیه؟

Behrouz_Rad
دوشنبه 26 دی 1384, 13:02 عصر
کدی که برای ارسال ایمیل استفاده می کنید رو مرحمت بفرمایید.

Identifier
دوشنبه 26 دی 1384, 13:26 عصر
public static string SendMail(string to,string bcc,string Subject,string body,Boolean ssl)
{
try
{
MailMessage Mailmsg = new MailMessage();
Mailmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", 1);
Mailmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "test@gmail.com");
Mailmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "XXXXX");
if (ssl)
{
Mailmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", "465");
Mailmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpusessl", "true");
}
Mailmsg.To = to;
Mailmsg.Bcc=bcc;
Mailmsg.From ="test@gmail.com";
Mailmsg.Subject =Subject;
Mailmsg.BodyFormat=MailFormat.Html;
Mailmsg.Body = body;
Mailmsg.BodyEncoding= Encoding.UTF8;
SmtpMail.SmtpServer = "mail.gmail.com";
SmtpMail.Send(Mailmsg);
return "ok";
}
catch(Exception e )
{
return e.Message;
}
}



من از روش فوق استفاده میکنم موردی هم برخورد نکردم با gmail به راحتی میشه email ارسال کرد فقط باید ssl رو فعال کنی

brida_kh
سه شنبه 27 دی 1384, 09:06 صبح
کد مورد نظر به صورت خلاصه اینه:


MailMessage fbamail = new MailMessage();
fbamail.From = "yasamin_6662003@yahoo.com";
fbamail.To = txbemail.Text.Trim();
fbamail.Subject = "دعوتنامه سایت";
fbamail.BodyFormat = MailFormat.Html;
fbamail.BodyEncoding = System.Text.Encoding.UTF8;
fbamail.Body = "این ایمیلها برای تست مراحل ثبت نام میباشد";
SmtpMail.SmtpServer = "smtp.fba.ir";
SmtpMail.Send(fbamail);
Label1.Visible=true;


با تشکر از جناب zolghadri اما این چند تا لینکی رو هم که فرمودند اضافه کردم . تغییری حاصل نشد.
با تشکر از توجه دوستان

Identifier
سه شنبه 27 دی 1384, 09:41 صبح
دوست عزیز من از کد فوق بارها استفاده کردم در هر حال این پست را ببینید دوستان زحمت کشیدند توضیحات بیشتری ارائه دادند
http://www.barnamenevis.org/forum/sh...ad.php?t=29612
موفق باشید

brida_kh
سه شنبه 27 دی 1384, 10:17 صبح
دوست عزیز از توجه شما بسیار سپاسگذارم اما موضوع اینه که کد مورد نظر مشکلی نداره حتی ایمیل به اونی که تحت هاست ساختم جواب میده ....
خوب اگه مشکل داشت کلا نباید اجازه ارسال میل رو میداد.
لازم به ذکره که من قبل از اینکه تاپیک بذارم جستجو هم کردم در سایت متاسفانه به نتیجه نرسیدم . :گریه:

Identifier
سه شنبه 27 دی 1384, 10:20 صبح
دقیقا خود من هم این مشکل رو داشتم ارسال ایمیل با هاست خودم مشکلی نداشت ولی به هاست های دیگه نمیتونستم کانکت بشم اومدم Authentication و SSL رو به کدم اضافه کردم بعد تونستم به میل Gmail متصل بشم ولی بعضی از Mail Server ها SSL ندارند اونو باید غیر فعال کنید
موفق باشید

Behrouz_Rad
سه شنبه 27 دی 1384, 13:25 عصر
اجازه ندارید که در خاصیت From، ایمیل رو از طرف هرکسی ارسال کنید!
باید ایمیل واقعی خود در هاست را در خاصیت From ذکر کنید.