PDA

View Full Version : سوال: تنظیم پروکسی در برنامه فرستادن ایمیل با vb.net2003



sky1388
سه شنبه 25 آبان 1389, 10:29 صبح
من یک برنامه با vb.net برای فرستادن ایمیل نوشتم که به صورت dial up کار میکنه اما اگر روی سیستمی گذاشته بشه که روی ان پروکسی set شده emai ها ارسال نمی شوند
چه طوری باید پروکسی را برای آن تنظیم کنم

قبلا از راهنمایی دوستان سپاسگذارم

mansourii
سه شنبه 25 آبان 1389, 11:28 صبح
من یک برنامه با vb.net برای فرستادن ایمیل نوشتم که به صورت dial up کار میکنه اما اگر روی سیستمی گذاشته بشه که روی ان پروکسی set شده emai ها ارسال نمی شوند
چه طوری باید پروکسی را برای آن تنظیم کنم

قبلا از راهنمایی دوستان سپاسگذارم


منظورتون رو متوجه نميشم!
يعني پروكسي رو سيستمي نصبه كه مجوز خروجي شما رو بسته؟:متفکر:

قبلا اين كا رو كردم . با سرويس SMTP و POP3 كه رايجترين براي ارسال فرستادن ايميل ( و ايميل گروهي) هست استفاده كردم
روش كارمم اين طور بود
اين رو ميدونيد كه اگه message ها پشت سر هم ارسال بشن تو inbox نميرن و توي Spam سرور ميرن

براي اين كار از ساختمان داده Queue استفاده كردم(صف)
نوع الگوريتم:
18 تا Queue در نظر گرفتم كه هر queue 180 عنصر داره
هر موقع rear رسيد بازگشت كنه و چك كنه ببينه عنصر ها خطا دارن يا خير اگه نداشت به queue بعدب بره.
از مزاياي اين كار :
ارسال حتمي به Inbox
Fetch شدن با سيستم هاي سروري
معايب:
زمانبدي خيلي زياد (طولاني)
سرعت اينترنت حداقل 128
هر 180 تا ارسال 7 ثانيه وقفه داره
به همين سادگي
من متوجه نشدم كه دقيقا شما چي ميگيد ولي اگه از اين سيستم استفاده كنيد خيلي كمتر دچار مشكل ميشيد

sky1388
یک شنبه 30 آبان 1389, 13:15 عصر
Create_ErrorFile("Sending Mail:", email)
Dim mail AsNew MailMessage
Dim SmtpMail As SmtpMail
mail.To = email
mail.From = System.Configuration.ConfigurationSettings.AppSett ings("MailUser")
mail.Subject = subjectmail.Trim
mail.BodyFormat = MailFormat.Html
mail.Priority = MailPriority.Normal
mail.BodyEncoding = Encoding.UTF8 ' Encoding.GetEncoding(1256)
mail.Body = bodymail
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1") 'basic authentication
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", System.Configuration.ConfigurationSettings.AppSett ings("MailUser"))

mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", System.Configuration.ConfigurationSettings.AppSett ings("MailPassword"))

'"web123") 'set your password here

mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/proxyaddress", System.Configuration.ConfigurationSettings.AppSett ings("ProxyUrl"))

mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusing", 2)
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", "25")
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendemailaddress", email)
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserver", System.Configuration.ConfigurationSettings.AppSett ings("MailServer"))




' SmtpMail.SmtpServer = System.Configuration.ConfigurationSettings.AppSett ings MailServer") e"



Try

Me.MlTMailError.Text = ""
Application.DoEvents()
SmtpMail.Send(mail)
Catch ex As Exception





Me.MlTMailError.Text = "Mail error: " + ex.ToString

Application.DoEvents()
EndTry


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

mansourii
یک شنبه 30 آبان 1389, 13:45 عصر
Create_ErrorFile("Sending Mail:", email)

Dim mail AsNew MailMessage
Dim SmtpMail As SmtpMail
mail.To = email
mail.From = System.Configuration.ConfigurationSettings.AppSett ings("MailUser")
mail.Subject = subjectmail.Trim
mail.BodyFormat = MailFormat.Html
mail.Priority = MailPriority.Normal
mail.BodyEncoding = Encoding.UTF8 ' Encoding.GetEncoding(1256)
mail.Body = bodymail
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1") 'basic authentication
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", System.Configuration.ConfigurationSettings.AppSett ings("MailUser"))

mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", System.Configuration.ConfigurationSettings.AppSett ings("MailPassword"))

'"web123") 'set your password here


mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/proxyaddress", System.Configuration.ConfigurationSettings.AppSett ings("ProxyUrl"))

mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusing", 2)

mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", "25")
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendemailaddress", email)
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserver", System.Configuration.ConfigurationSettings.AppSett ings("MailServer"))






' SmtpMail.SmtpServer = System.Configuration.ConfigurationSettings.AppSett ings MailServer") e"



Try

Me.MlTMailError.Text = ""

Application.DoEvents()
SmtpMail.Send(mail)
Catch ex As Exception







Me.MlTMailError.Text = "Mail error: " + ex.ToString

Application.DoEvents()

EndTry




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


سلام. كد رو مطالعه كردم، ولي متوجه نميشم كجا ايراد داري؟

يك نمونه الگوريتم برات ميزارم شايد مشكل حل بشه


private void send()
{
try
{
Cursor.Current = Cursors.WaitCursor;
SmtpClient MySMTPClient = new SmtpClient("smtp.gmail.com", 25);
MySMTPClient.EnableSsl = true;
NetworkCredential MyCredentials = new NetworkCredential(username, password);
MySMTPClient.Credentials = MyCredentials;
MyMessage = new MailMessage(username + "@gmail.com", txtTo.Text, txtSubject.Text,htmlTextbox1.Text );
MyMessage.IsBodyHtml = true;
if (attachfilepatch != null)
{
MyMessage.Attachments.Add(new Attachment(attachfilepatch));
MySMTPClient.Send(MyMessage);
}
else
MySMTPClient.Send(MyMessage);
MessageBox.Show(" ... درحال ارسال پيام ",
"ارسال",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
catch (Exception MyError)
{
MessageBox.Show("يك خطا در سرور وجود دارد " + MyError.Message);
}