الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

خطا في ارسال بريد الكتروني

بدأه أبو البراء 2 في 19 ديسمبر 2011 · 6 رد · 578 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

لدي class للقيام بإرسال بريد الكتروني وأنا باستخدم asp.net 2008 ولكن يعطيني رسالة خطا failure sendig email

Public Class M_TO

    Public Shared Sub SendMail(ByVal M_from As String, ByVal M_To As String, ByVal M_Sub As String, ByVal M_Body As String)

        Dim strFrom As String = M_from

        Dim strTo As String = M_To

        Dim MailMsg As New MailMessage(New MailAddress(strFrom.Trim()), New MailAddress(strTo))

        MailMsg.IsBodyHtml = True

        MailMsg.Subject = M_Sub

        MailMsg.Body = M_Body

        MailMsg.Priority = MailPriority.Normal

        MailMsg.IsBodyHtml = True
        Try
            Dim mailauth = New NetworkCredential
            mailauth.UserName = "info@mydominname"
            mailauth.Password = "mypassword"
            Dim SmtpMail = New SmtpClient("smtp.gmail.com", 587)
            SmtpMail.EnableSsl = True
            SmtpMail.UseDefaultCredentials = False
            SmtpMail.Credentials = mailauth
            SmtpMail.Send(MailMsg)

        Catch ex As Exception

            MailMsg.Dispose()
            Exit Try
        End Try

        MailMsg.Dispose()



End Sub

علما بأنه لدينا دومين على gmail فهل اقوم بكتابته في اسم host مكان gmail.com

#2

احاول المقارنة بكود عندي ولا اجد فروقات في هذا الكود ولم اجد فرق الا في SmtpMail.UseDefaultCredentials = False فهي غير موجودة عندي .

انصحك اولا واذا لم تقم بذلك ان تجرب الارسال من خلال الاوتلوك او اي برنامج مشابه قبل الانتقال الى المشكلة البرمجية .

اقتباس
علما بأنه لدينا دومين على gmail فهل اقوم بكتابته في اسم host مكان gmail.com

انت تستخدم google apps لكن يجب ان تستخدم السيرفر smtp.gmail.com للارسال .

لكن في اسم المستخدم استخدم الاسم كامل info@example.com .

#3

جربت على البريد الخاص بالاستضافة وتم الارسال ولكن هناك مشكلتان :

الاولى : عند الاتصال بالمودم مباشرة يتم الارسال اما عن طريق الشبكة الداخلية فلا يتم الارسال وذلك لإنه هناك isa 2006 وهو بروكسي للانترنت في الشبكة فالارسال لايتم من خلاله فهل من طريقة لتجاوزه قمت بعمل بوليسي

للسماح للبروتوكول smtp ولكن لم تجدي

ثانيا : عند الارسال لإكثر من شخص الفاصل بين عناوين البريد هل هذه العلامة , ام هذه العلامة ;

جربت الاولى لم يتم الارسال الا للايميل الاول فقط

جربت الثانية لم يتم الارسال نهائيا واعطاني خطا

#4

السلام عليكم ورحمه الله وبركاته

اخي جرب الكود التالي

msg.To.Add(new MailAddress("manager@mydominname.com", "VB Helper"));
msg.To.Add(new MailAddress("info@mydominname.com", "Abo Al-Bara'a"));

.:: Wish to become better and better ::.

#5

شكرا يا اخي على الرد ، ولكن لو كان عندي قاعدة بيانات فيها مثلا خمسمائة شخص واريد ان ارسل للكل فهل اقوم بالارسال الى شخص شخص ، انا كنت عامل في asp.net 2005 كود الارسال نفس الا عملته الان

اول شي كنت افصل بين بريد وبريد بالفاصلة المنقوطة وكان يرسل للكل اما الان مع asp.net 2008 عندما وضعت الفاصلة المنقوطة اعطاني هذا الخطا

the specified string is not in the form required for e-mail address

غيرت ووضعت فاصلة عادية بين كل بريد وبريد اصبح لا يرسل الا للبريد الاول فقط

ثانيا / بالنسبة الى isa هل لديك فكرة كيف امرر طلبات الارسال من خلاله

وشكرا

#6

السلام عليكم ورحمه الله وبركاته

اخي اذا كان معك حتى مليون شخص يمكنك عمل دوران يقوم باضافة عنوان جديد وبعد الانتهاء قم بارسال الرساله فسيتم ارسالها للجميع ..

.:: Wish to become better and better ::.

#7

السلام عليكم

لا انصحك بتجميع عدد كبير من المرسل اليهم في رسالة واحدة خاصة انك تستخدم بريد جوجل وحتى لاتعتبر هذه الرسائل راسائل مزعجة (عليك ان تتأكد من شروط استخدام الخدمة)

مواضيع مشابهة