title: send email with smtp client in c#
body: <p>I need to send emails from my Asp.net c# site, we are hosting on ovh, here what I did:</p>
  
  <pre><code>public static void Send(string stringFrom, string stringFromPass, 
          string stringTo, string stringBody, string stringSubject, int tryNb)
      {
          // Command line argument must the the SMTP host.
          SmtpClient client = new SmtpClient("smtp.mondomaine.me", 587);
          // Specify the e-mail sender. 
          // Create a mailing address that includes a UTF8 character 
          // in the display name.
          MailAddress from = new MailAddress(stringFrom,
             "Sender",
          System.Text.Encoding.UTF8);
          // Set destinations for the e-mail message.
          MailAddress to = new MailAddress(stringTo);
          // Specify the message content.
          MailMessage message = new MailMessage(from, to);
          message.Body = stringBody;
          message.IsBodyHtml = true;
          message.BodyEncoding = System.Text.Encoding.UTF8;
          message.Subject = stringSubject;
          message.SubjectEncoding = System.Text.Encoding.UTF8;
          //provide Authentication Details need to be passed when sending email from gmail
          string password = Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(stringFromPass));
          NetworkCredential mailAuthentication = new NetworkCredential(stringFrom, password);
          client.UseDefaultCredentials = false;
          client.Credentials = mailAuthentication; 
          // Set the method that is called back when the send operation ends.
          client.SendCompleted += new
          SendCompletedEventHandler(SendCompletedCallback);
          // The userState can be any object that allows your callback  
          // method to identify this send operation. 
          // For this example, the userToken is a string constant. 
          string userState = stringFrom + "*&amp;(k)&amp;*" +
              stringFromPass + "*&amp;(k)&amp;*" + stringTo + "*&amp;(k)&amp;*" +
              stringBody + "*&amp;(k)&amp;*" + stringSubject + "*&amp;(k)&amp;*" + tryNb.ToString();
          client.SendAsync(message, userState);
      }
  </code></pre>
  
  <p>and then i'm calling this fonction whenever i need to. I'm receiving an ovh server response:  </p>
  
  <pre><code>sorry, invalid MAIL FROM for open-smtp session (http://travaux.ovh.com/?do=details&amp;id=2602)
  </code></pre>
  
  <p>on this last link they told that:</p>
  
  <pre><code>messages sent via open-smtp will only be accepted if the email address of the fields From / Sender is the same connection login used for POP access.
  </code></pre>
  
  <p>As you see in my code i'm not using POP and i dont know how to. so why this restriction ?
  Any idea how to fix that will be much apreciated.</p>