2009-09-19 8 views
1

Comment ouvrir Outlook Express en C# 2008?Envoyer un e-mail à Outlook Express en C#

Comment joindre un fichier de mon application à Outlook?

+5

Pourquoi avez-vous besoin d'utiliser Outlook (ou Outlook Express) pour envoyer votre e-mail? C# a déjà un support intégré pour l'envoi de courrier électronique, en utilisant l'espace de noms 'System.Net.Mail'. –

+2

@vijaii: votre SO bio dit que vous êtes un développeur de serveur ASP.NET, C#, WPF, SQL, donc ce n'est pas quelque chose que vous devriez être capable de travailler pour vous-même? Peut-être même essayer un moteur de recherche? –

Répondre

7

Outlook Express est obsolète depuis si longtemps que je ne me souviens pas même la dernière fois que je fait vu toute personne qui utilise ... C'est un cauchemar de sécurité, et a été retiré de l'âge de Windows il y a

de afaik , Outlook Express n'a pas une API pour le manipuler par programme (mais Outlook le fait). Comme d'autres l'ont suggéré dans les commentaires, vous devriez probablement envoyer le courrier directement à partir de votre code C#, sans impliquer Outlook Express. Vérifiez l'espace de noms System.Net.Mail dans MSDN, il contient tout ce dont vous pourriez avoir besoin (y compris des exemples de code)

7

Comme d'autres l'ont souligné que vous utilisez mieux la System.Net.Mail si vous voulez simplement envoyer un mail.

Si, pour une raison quelconque, vous souhaitez envoyer des messages à l'aide d'Outlook, vous devrez utiliser Office interop.
Quelque chose comme ceci:

using Outlook = Microsoft.Office.Interop.Outlook; 

    Outlook.Application oApp = new Outlook.Application(); 

         Outlook.MailItem email = (Outlook.MailItem)(oApp.CreateItem(Outlook.OlItemType.olMailItem)); 
         email.Recipients.Add("[email protected]"); 
         email.Subject = "Subject"; 
         email.Body = "Message"; 


         ((Outlook.MailItem)email).Send(); 
5

Si vous cherchez à composer un e-mail en utilisant le client de messagerie par défaut de l'utilisateur, essayez ceci:

using System; 
using System.Diagnostics; 

namespace RunMailTo 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      Process.Start("mailto://[email protected]"); 
     } 
    } 
} 

Vous pouvez ajouter des paramètres supplémentaires à l'URL mailto: pour définir le sujet, le corps, etc. Voir http://msdn.microsoft.com/en-us/library/aa767737%28VS.85%29.aspx pour plus d'informations.

Questions connexes