Monday, January 22, 2007

Many ways to get your application path

// The following returns the application executable path with exe name
Console.WriteLine(System.Environment.CommandLine);
// or
Console.WriteLine(System.Windows.Forms.Application.ExecutablePath);
// or
Console.WriteLine(System.Reflection.Assembly.GetExecutingAssembly().Location);

// The following returns just the application executable path
Console.WriteLine(System.Environment.CurrentDirectory);
// or
Console.WriteLine(System.IO.Directory.GetCurrentDirectory());
// or
Console.WriteLine(System.Windows.Forms.Application.StartupPath);
// or
Console.WriteLine(System.AppDomain.CurrentDomain.BaseDirectory);
// or
Console.WriteLine(System.Reflection.Assembly.GetExecutingAssembly().CodeBase);

AutoComplete functionality for Text box in WinForms

AutoCompleteStringCollection AutoComp = null;

txtFName.AutoCompleteMode = AutoCompleteMode.Suggest;
txtFName.AutoCompleteSource = AutoCompleteSource.CustomSource;

AutoComp.Add("AAAA");
AutoComp.Add("BBBB");
AutoComp.Add("GGGG");

txtFName.AutoCompleteCustomSource = AutoComp;

Send Email programmatically using your Gmail account

protected void btnSendEmail_Click(object sender, EventArgs e)
{
// Create Mail Message Object with content that you want to send with mail.
System.Net.Mail.MailMessage MyMailMessage = new System.Net.Mail.MailMessage("dotnetguts@gmail.com","myfriend@yahoo.com",
"This is the mail subject", "Just wanted to say Hello");

MyMailMessage.IsBodyHtml = false;

// Proper Authentication Details need to be passed when sending email from gmail
System.Net.NetworkCredential mailAuthentication = new
System.Net.NetworkCredential("dotnetguts@gmail.com", "myPassword");

// Smtp Mail server of Gmail is "smpt.gmail.com" and it uses port no. 587
// For different server like yahoo this details changes and you can
// Get it from respective server.
System.Net.Mail.SmtpClient mailClient = new System.Net.Mail.SmtpClient("smtp.gmail.com",587);

// Enable SSL
mailClient.EnableSsl = true;

mailClient.UseDefaultCredentials = false;

mailClient.Credentials = mailAuthentication;

mailClient.Send(MyMailMessage);
}