michelc Blog

Just <strong>another</strong> WordPress.com weblog

Archive for novembre 2005

Authentification SMTP

leave a comment »

Pour certains serveurs SMTP il est nécessaire de faire une connexion POP avant de pouvoir envoyer un mél (« POP before SMTP » Authentication). Apparement, cela inscrit l’adresse IP de la machine effectuant la connexion dans une table de façon à ensuite autoriser les connexions SMTP (au coup par coup, temporairement ou à vie ?).

Etant donné qu’il n’existe pas de classe System.Pop en ASP.NET 1.1, il reste à trouver une classe POP qui fasse l’affaire. Voir éventuellement l’article « How to POP3 in C# » de Randy Charles Morin.

Written by michel

30 novembre 2005 at 2:24

Publié dans .net, QC

Amélioration XxxxxSearch – Etape 1

leave a comment »

  • Renommé les clés des paramètres pour les préfixer par « search » au lieu de « google », « msn » et « yahoo »,
  • Mise en commun de la quasi-totalité du source de viewXxxxxSearch.ascx.cs, à l’exception de celui de ExecuteSearch qui reste spécifique à GoogleSearch, MsnSearch ou YahooSearch,
  • Suppression de la table pour la mise en forme des formulaires de recherche (inspiré par Search Form Layout):
<fieldset class="search_form">
<div class="search_cols">
 <a href="http://www.google.com/" target="_blank">
  <asp:Image id="logoSearch" runat="server"
       AlternateText="Google" ImageUrl="google_logo.gif" />
 </a>
</div>
<div class="search_cols">
 <p>
  <asp:textbox id="txtQuery" runat="server"
       Columns="35" maxlength="100" />
  <asp:button id="btnSearch" runat="server" Text=" Go! " />
 </p>
 <p>
  <asp:radiobuttonlist id="chxRange" runat="server"
       RepeatDirection="Horizontal" RepeatLayout="Flow" />
 </p>
</div>
</fieldset>

Reste à faire :

  • Améliorer le fonctionnement en mode GET (cf. étape 2),
  • Ne plus passer par le postback ?
  • Remplacer GoogleSearchService.dll, Msn.API.dll et Yahoo.API.dll par une seule DLL.

Written by michel

29 novembre 2005 at 11:06

Publié dans QC

Un formulaire simple pour tester l’envoi de mail

leave a comment »

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Mail" %>
<script runat="server">    
void btnSubmit_Click(Object sender, EventArgs e) {
  MailMessage mail = new MailMessage();
  mail.To = txtTo.Text;
  mail.From = txtFrom.Text;
  mail.Subject = txtSubject.Text;
  mail.Body = txtMessage.Text;
  mail.Priority = MailPriority.High;
  mail.BodyFormat = MailFormat.Text;
  SmtpMail.SmtpServer = txtSmtpServer.Text;
  if (txtSmtpUsername.Text.Trim() != "") {
    if (txtSmtpPassword.Text.Trim() != "") {
      mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
      mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", txtSmtpUsername.Text);
      mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", txtSmtpPassword.Text);
    }
  }
  try {
    SmtpMail.Send(mail);
    Response.Write("OK!");
  } catch (Exception ex) {
    Response.Write("KO: " + ex.ToString());
  }
}
</script>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Mail test</title>
  </head>
  <body>
    <form runat="server">
      <ul>
        <li>Smtp Server : <asp:TextBox id="txtSmtpServer" runat="server"></asp:TextBox></li>
        <li>Smtp Username : <asp:TextBox id="txtSmtpUsername" runat="server"></asp:TextBox></li>
        <li>Smtp Password : <asp:TextBox id="txtSmtpPassword" runat="server"></asp:TextBox></li>
        <li>From : <asp:TextBox id="txtFrom" runat="server"></asp:TextBox></li>
        <li>To : <asp:TextBox id="txtTo" runat="server"></asp:TextBox></li>
        <li>Subject : <asp:TextBox id="txtSubject" runat="server"></asp:TextBox></li>
        <li>Message : <asp:TextBox id="txtMessage" TextMode="MultiLine" runat="server"></asp:TextBox></li>
      </ul>
      <asp:Button runat="server" id="btnSubmit" OnClick="btnSubmit_Click" Text="Send"></asp:Button>
    </form>
  </body>
</html>

(Publié à l’origine sur http://www.bigbold.com/snippets/posts/show/906)

Written by michel

23 novembre 2005 at 4:30

Publié dans .net, Code Snippets

Retrouver un numéro de semaine

leave a comment »

public static int GetWeekNumber (DateTime dt) {
	CultureInfo culture = CultureInfo.CurrentCulture;
	int intWeek = culture.Calendar.GetWeekOfYear(dt, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday);
	return intWeek;
}

(Publié à l’origine sur http://www.bigbold.com/snippets/posts/show/856)

Written by michel

4 novembre 2005 at 4:39

Publié dans c#, Code Snippets