مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

abdollahi

عضویت از 1392/10/23

ارسال ایمیل

  • جمعه 26 آذر 1395
  • 14:17
تشکر میکنم

من برای ارسال ایمیل از کد زیر استفاده کردم. در محیط visual studio.net جواب میگیرم و ایمیل ارسال می شود ولی وقتی برنامه را روی هاست قرار می دهم ایمیل ارسال نمی شود. چه کنم

 public bool sendemail(string stmp, string fromemail, string password, string to, string subject, string message)
    {
        try
        {
            MailMessage m = new MailMessage();
            m.From = new MailAddress(fromemail);
            m.To.Add(to);
            m.Subject = subject;
            m.Body = message;
            m.IsBodyHtml = true;
            m.Priority = MailPriority.High;
            if (FileUpload1.HasFile)
            {
                string FileName = System.IO.Path.GetFileName(FileUpload1.PostedFile.FileName);
                Attachment attach = new Attachment(FileUpload1.PostedFile.InputStream, FileName);
                attach.TransferEncoding = System.Net.Mime.TransferEncoding.Base64;
                m.Attachments.Add(attach);
            }
            SmtpClient mysmtp = new SmtpClient(stmp);
            mysmtp.UseDefaultCredentials = true;
            mysmtp.EnableSsl = true;
            mysmtp.Credentials = new NetworkCredential(fromemail, password);
            mysmtp.Port = 25;
            mysmtp.Timeout = 1000000;
            mysmtp.Send(m);
            return true;
        }
        catch (Exception ex)
        {

            return false;
        }
    }

پاسخ های این پرسش

تعداد پاسخ ها : 12 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • جمعه 26 آذر 1395
  • 14:51

از جیمیل استفاده میکنید ؟ باید اجازه ارسال بدید

وارد این لینک بشید و گزینه enable را انتخاب کنید

توضیح بیشتر

کاربر سایت

abdollahi

عضویت از 1392/10/23

  • شنبه 27 آذر 1395
  • 07:48

با تشکر فراوان از پاسخگویی شما

ایمیل مبدا و مقصد مورد استفاده gmail می باشد. و این موردی را که شما فرمودید را در my account ایمیل فعال کرده ام. در محیط ویژوال استودیو که برنامه را اجرا میکنم ایمیل ارسال می شود ولی در هاست اجرا نمی شود

اینم کد فراخوانی تابعی که در تاپیک قبل فرستادم
        bool a = sendemail("smtp.gmail.com", "a@gmail.com", "1234", "b@gmail.com",  txtSubject.Text, txtBody.Text);
        if (a == true)
        {
            lblMessage.Text = " با موفقیت ارسال شد";
        }
        else
        {
            lblMessage.Text = "ایمیل ارسال نشد";
        }

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • شنبه 27 آذر 1395
  • 12:24

لینک توضیح بیشتر را دیدید ؟

کاربر سایت

abdollahi

عضویت از 1392/10/23

  • یکشنبه 28 آذر 1395
  • 10:16

با سپاس فراوان از پاسخگویی شما

متاسفانه من انگلیسی ضعیفی دارم. تا جایی که از لینک توضیح بیشتر که شما قرار دادید متوجه شدم

یا کدها اشتباه می باشد

یا پسورد اشتباه می باشد

یا گزینه پایین آوردن امنیت ایمیل را باید فعال کرده باشیم

من گزینه امنیت را فعال کردم تا توانستم در محیط ویژوال استودیو اجرا بگیرم. و همان کدها را در هاست قرار دادم ولی جواب نگرفتم. ایمیل مبد و مقصد را gmail استفاده کرده ام

از ایمیل هاست نیز استفاده کردم ولی جواب نگرفتم

چند روزی هست که ذهنم درگیر این مساله می باشد . اگر برای شما امکان دارد مرا راهنمایی بیشتر بفرمایید

اگر بخواهم از ایمیل هاست استفاده کنم تنظیمات مثل شماره پورت ای که هاست داده باید استفاده کنم

sad

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • یکشنبه 28 آذر 1395
  • 10:20

متن کامل ارور را ضمیمه کنید

کاربر سایت

abdollahi

عضویت از 1392/10/23

  • یکشنبه 28 آذر 1395
  • 10:32

با سپاس فراوان

The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.5.1 Authentication Required. Learn more at

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • یکشنبه 28 آذر 1395
  • 10:36

این دقیقا مشکل اعتبار سنجی هست و با اون لینکی که دادم باید برطرف بشه

وارد این لینک بشید و TurrnOn را بزنید

کاربر سایت

abdollahi

عضویت از 1392/10/23

  • یکشنبه 28 آذر 1395
  • 10:44

وقتی وارد این لینک میشم turn on فعال هست. من از my account ایمیلم فعالش کرده بودم

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • یکشنبه 28 آذر 1395
  • 10:48

وارد این لینک بشید و روی Continue کلیک کنید

کاربر سایت

abdollahi

عضویت از 1392/10/23

  • یکشنبه 28 آذر 1395
  • 10:57

با تشکر فراوان

ایمیل ارسال شد

فقط یه سوال دیگه

اگر بخواهم از ایمیل هاست استفاده کنم از شماره پورتی که هاست داده استفاده کنم یا همان 587

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • یکشنبه 28 آذر 1395
  • 10:58

بله

خود هاست شماره پورت را در اخیارتون قرار میده

کاربر سایت

abdollahi

عضویت از 1392/10/23

  • یکشنبه 28 آذر 1395
  • 11:18

با تشکر فراوان از وقتی که گذاشتید

آدرس smtp و شماره پورت و ایمیل و پسورد هاست را جایگزین کدهای قبلیم کردم

خطای The operation has timed out میده

من زمان timeout مربوط به smtp را یه زمان طولانی گذاشتم بازم همین خطا را میده

لطفا راهنماییم کنید

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)