আমার জিমেইল অ্যাকাউন্ট থেকে ইমেল প্রেরণে আমারও কিছু সমস্যা হয়েছিল, যা পূর্বোক্ত কয়েকটি পরিস্থিতিতে রয়েছে। আমি কীভাবে এটি কাজ করেছিলাম এবং একই সাথে এটি নমনীয় রাখছি তার একটি সংক্ষিপ্তসার এখানে:
- প্রথমে আপনার GMail অ্যাকাউন্ট সেটআপ করুন:
- IMAP সক্ষম করুন এবং সঠিক সর্বাধিক সংখ্যক বার্তা যুক্ত করুন (আপনি এখানে এটি করতে পারেন)
- আপনার পাসওয়ার্ডটি কমপক্ষে 7 টি অক্ষর এবং শক্তিশালী (Google এর মতে) নিশ্চিত করুন
- আপনাকে প্রথমে ক্যাপচা কোড প্রবেশ করতে হবে না তা নিশ্চিত করুন। আপনি আপনার ব্রাউজার থেকে একটি পরীক্ষা ইমেল প্রেরণ করে এটি করতে পারেন।
- ওয়েবকনফিগে পরিবর্তন করুন (বা app.config, আমি এখনও এটি চেষ্টা করি নি তবে আমি ধরে নিলাম এটি উইন্ডোজ অ্যাপ্লিকেশনটিতে কাজ করা ঠিক তত সহজ):
<configuration>
<appSettings>
<add key="EnableSSLOnMail" value="True"/>
</appSettings>
<!-- other settings -->
...
<!-- system.net settings -->
<system.net>
<mailSettings>
<smtp from="yourusername@gmail.com" deliveryMethod="Network">
<network
defaultCredentials="false"
host="smtp.gmail.com"
port="587"
password="stR0ngPassW0rd"
userName="yourusername@gmail.com"
/>
<!-- When using .Net 4.0 (or later) add attribute: enableSsl="true" and you're all set-->
</smtp>
</mailSettings>
</system.net>
</configuration>
Add a Class to your project:
Imports System.Net.Mail
Public Class SSLMail
Public Shared Sub SendMail(ByVal e As System.Web.UI.WebControls.MailMessageEventArgs)
GetSmtpClient.Send(e.Message)
'Since the message is sent here, set cancel=true so the original SmtpClient will not try to send the message too:
e.Cancel = True
End Sub
Public Shared Sub SendMail(ByVal Msg As MailMessage)
GetSmtpClient.Send(Msg)
End Sub
Public Shared Function GetSmtpClient() As SmtpClient
Dim smtp As New Net.Mail.SmtpClient
'Read EnableSSL setting from web.config
smtp.EnableSsl = CBool(ConfigurationManager.AppSettings("EnableSSLOnMail"))
Return smtp
End Function
End Class
এবং এখনই যখনই আপনি ইমেলগুলি প্রেরণ করতে চান তখন আপনাকে কল করতে হবে SSLMail.SendMail
:
যেমন একটি পাসওয়ার্ড পুনরুদ্ধার নিয়ন্ত্রণ সহ একটি পৃষ্ঠাতে:
Partial Class RecoverPassword
Inherits System.Web.UI.Page
Protected Sub RecoverPwd_SendingMail(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.MailMessageEventArgs) Handles RecoverPwd.SendingMail
e.Message.Bcc.Add("webmaster@example.com")
SSLMail.SendMail(e)
End Sub
End Class
বা আপনার কোডের যে কোনও জায়গায় আপনি কল করতে পারেন:
SSLMail.SendMail(New system.Net.Mail.MailMessage("from@from.com","to@to.com", "Subject", "Body"})
আমি আশা করি এটি এই পোস্টে প্রবেশকারী যে কোনও ব্যক্তিকে সহায়তা করবে! (আমি ভিবি.এনইটি ব্যবহার করেছি তবে আমার মনে হয় এটিকে কোনও। নেট ভাষায় রূপান্তর করা খুব নগণ্য ial)