Envoi de mail par Outlook 2000

Résolu
Signaler
Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
14 février 2014
-
Messages postés
195
Date d'inscription
dimanche 10 février 2002
Statut
Membre
Dernière intervention
16 février 2016
-
Voilà, je suis en train de perdre un temps fou avec une connerie : envoyer un mail en utilisant Outlook...
Quand on dit à son DSI... "oui, oui, c'est simple, .NET gère les objets COM"... pis au bout de 4 heures... il me reste 4 cheveux sur le haut du crane

Donc, j'utilise le code suivant :


Outlook
.ApplicationClass outlookApp;

Outlook
._MailItem mail;

outlookApp
=
new Outlook
.ApplicationClass();
mail
= (Outlook
._MailItem)outlookApp
.CreateItem(Outlook
.OlItemType
.olMailItem);
mail
.Recipients
.Add(
this.To);
mail
.To
=
this.To;
mail
.Subject
=
this.subject;

mail
.ReplyRecipients
.Add(
this.From);


et à la ligne :
mail = (Outlook._MailItem)outlookApp.CreateItem(Outlook.OlItemType.olMailItem);

il me donne l'erreur suivante :
Une exception non gérée du type 'System.InvalidCastException' s'est produite dans CRM.exe


Informations supplémentaires : QueryInterface for interface Outlook._Application failed.

Voilà... merci

Sébastien FERRAND

Blog : http://blogs.developpeur.org/sebmafate
</FO< body>

8 réponses

Messages postés
2368
Date d'inscription
mardi 17 avril 2001
Statut
Modérateur
Dernière intervention
26 décembre 2007
22
outlookApp = new Outlook.ApplicationClass();


mail = (Outlook._MailItem)outlookApp.CreateItem(Outlook.OlItemType.olMailItem);


mail.Recipients.Add("montei_s@XXX.org");


mail.To = "montei_s@XXX.org";


mail.Subject = "TEST";


mail.Send();

Testé ca marche très bien, mise à part la popup anti-ver de outlook ;)

::|The S@ib|::
MVP C#.NET
Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
14 février 2014
38
mouaip... bon... je pense ca doit venir de l'installation de mon poste... c'est pas grave.

donc la solution la plus simple est la suivante :



string mail
=
string.Format(
"mailto:{2}?subject={0}&body={1}",
this.subject,
this.Body,
this.a);


Process
.Start(mail);

Sébastien FERRAND

Blog : http://blogs.developpeur.org/sebmafate
</FO< body>
Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
14 février 2014
38
C'est bon, j'ai trouvé la solution...
Il fallait effacé la clé HKCR\TypeLib\{00062FFF-0000-0000-C000-000000000046}\9.1

de la base de registre... En fait pour retrouver l'automation de toute la suite Office2000, il suffit de virer tous les TypeLib qui correspondent aux PIAs d'OfficeXP (voire 2003).

Sébastien FERRAND

Blog : http://blogs.developpeur.org/sebmafate
</FO< body>
Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
14 février 2014
38
raaahhhh... tu es en train de me dire... que d'une part, c'est la bonne méthode et d'autre part... j'ai perdu 4h ???

demain... j'y r'tourne...

Sébastien FERRAND

Blog : http://blogs.developpeur.org/sebmafate
</FO< body>
Messages postés
2368
Date d'inscription
mardi 17 avril 2001
Statut
Modérateur
Dernière intervention
26 décembre 2007
22
La vie est ainsi faite.

::|The S@ib|::
MVP C#.NET
Messages postés
2368
Date d'inscription
mardi 17 avril 2001
Statut
Modérateur
Dernière intervention
26 décembre 2007
22
rhoo c'est moche !

En plus si tu n'as pas outlook en client de messagerie par défaut çà marche pas.

::|The S@ib|::
MVP C#.NET
Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
14 février 2014
38
je sais c'est moche.
mais justement ca prend le client par défaut... donc si outlook n'est pas sur le poste, ca marche toujours.

c'est pour une application en interne... donc avec Exchange... bref, étant donné qu'au final, mon utilisateur devait renseigné l'adresse email du destinataire et compléter le texte... ca me convient.

Sébastien FERRAND

Blog : http://blogs.developpeur.org/sebmafate
</FO< body>
Messages postés
195
Date d'inscription
dimanche 10 février 2002
Statut
Membre
Dernière intervention
16 février 2016

A tout hasard, existe t-il un moyen de chopper la liste des compte de messagerie de l'outlook actuel ?
J'ai pas encore vraiment chercher, mais si quelqu'un aurait la réponse cela me ferai economiser du temps.

Merci d'avance