Click here to Skip to main content
15,892,161 members
Articles / Programming Languages / C#
Article

Simple Windows Service which sends auto Email alerts

Rate me:
Please Sign up or sign in to vote.
2.67/5 (25 votes)
15 Nov 2006CPOL2 min read 164.5K   6.4K   38   20
Sending Email alerts to your friends saying Good Day

Introduction                                                 

   Sample screenshot Download sourcecode

 Hi,                                                                                  

  This is Ravindra, Implemented a windows service in one of my project and like to place a

 sample Windows service for the very Basic users of .Net.

     First Create a table in Msaccess with Name  'Empdata'

       Sample screenshot


 1.Open Visual Studio.net > Select New Project 

              Sample screenshot


     2.Select Windows Service and give Name as 'GoodDay' and Click Ok.


     3.Right Click the Design and Select Properties and give the Name and ServiceName as 

        'GoodDay' and set AutoLog to 'True'


     4.Drag and drop the OleDbConnection and Select its properties and change its name to

        'conn' and provide the connection String(I provided the Database sample(Ms

         Access)) along with this code.


     5.Right Click the Design and select View Code and

        Select Project > Add Reference > Select System.Web >Press Ok


     6.Now add the following to your code         

          using System.Web.Mail;

          using System.Data.OleDb;


     7.Declare DateTime mdt=DateTime.Now;


     8.    In static void Main()

         Edit the following Code

        ServicesToRun = new System.ServiceProcess.ServiceBase[] { new GoodDay() };


     9. Edit the following code in onstart()

        

DataSet ds = new DataSet();

protected override void OnStart(string[] args)

{

DateTime dt=DateTime.Now;

conn.Open();

OleDbDataAdapter da=new OleDbDataAdapter("select * from Empdata",conn);

da.Fill(ds);

if(dt.ToShortDateString()==mdt.ToShortDateString())

{

foreach(DataRow dr in ds.Tables[0].Rows)

{

mdt=DateTime.Now.AddDays(+1);

String mailtxt="";

MailMessage mm = new MailMessage();

mm.BodyFormat = MailFormat.Html;

mm.To = dr["emp_email"].ToString();

mm.From = "xyz@xyz.com";

mm.Subject="Good Day";

mailtxt = "<font face='verdana' color='#FF9900'><b>"+"Hi "+dr["emp_name"].ToString()+"," + "</b></font><br><br>";

mailtxt=mailtxt+"<font face='verdana' color='#FF0000'><b>"+"Good Day." + "</b></font><br><br>";

mailtxt=mailtxt+"<font face='verdana' color='#008080'><b>"+"May today be filled with sunshine and smile, laughter and love." + "</b></font><br><br>";

mailtxt=mailtxt+"<font face='verdana' color='#0000FF'><b>Cheers!" + "<br><br>";

mm.Body = mailtxt;

SmtpMail.SmtpServer="localhost";

SmtpMail.Send(mm);

}

}

}


10.Go to Design,right click and Select Add Installer ,you will notice two controls

     serviceProcessInstaller1,serviceInstaller1


11.Select  serviceProcessInstaller1 and go to its properties and change the Account

      type to 'Local System'


12. Select  serviceInstaller1 and go to its properties and change DisplayName and

      ServiceName to 'GoodDay' and make the StartType to 'Automatic'


13.Build the Solution(Cntrl+Shift+B)


14.Open the Visual Studio .Net Command Prompt and give the path of application

     for example C:\bin\Debug and then type InstallUtil GoodDay.exe
                

     to uninstall,  InstallUtil    /u GoodDay.exe         

 Sample screenshot

      


15. After Installation ,right click My Computer and

       Select 'Manage'

       and Select 'Service and Applications'

       and in that Select 'Services'

Select 'GoodDay' and start the Service.

                                     All the Best...................

Special thanks to Phani Kumar,Hyd.

                                                                             With Regards,

                                                                          Ravindra Donkada

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Web Developer
India India
Hi,
I am Ravindra, working as a .net programmer

Comments and Discussions

 
GeneralMy vote of 4 Pin
vsanju14-Mar-12 1:54
vsanju14-Mar-12 1:54 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.