Ouvrir un mail sous outlook avec vb.net 2008 [Résolu]

Signaler
Messages postés
156
Date d'inscription
vendredi 13 janvier 2006
Statut
Membre
Dernière intervention
2 mars 2009
-
 Lightman -
Bonjour,

Je code sous visual studio 2008 et je souhaiterai pourvoir ouvrir un mail sous outlook ( le code devient assez restreint en utilisation certains me diront mais ce code sera utiliser seulement dans mon bureau et mon entreprise n'utilise que outlook 2007)

J'ai fait pas mal de recherche et j'ai trouvé plein de source mais je n'ai pas trouvé de solution...

Cette>>>source<<< serait parfaitement adaptable à mes besoins mais même après avoir importé Microsoft Office 11 Object Library 
(ou même Microsoft Office 12 Object Library
afin de correspondre avec office2007) j'ai déjà une erreur quand je veux faire mes imports ...

Imports Microsoft.Office.Interop.Outlook

La seule chose à laquelle j'ai &ccès sur les imports est:

Imports Imports Microsoft.Office.Core

Donc voilà impossibilté de pouvoir déclarer les objet necessaire... Dim blabla as outlook.application

Pouvez-vous m'aider svp ?

10 réponses

Messages postés
23
Date d'inscription
dimanche 26 octobre 2008
Statut
Membre
Dernière intervention
9 mai 2010

Salut,

Je ne sais pas si j'ai bien compris mais un mailto devrait suffire. En effet il me semble que tu définis le corps le sujet et autres paramètres et le mailto ouvre automatiquement l'outils de messagerie de l'intéressé... à voir.

  Tu trouveras facilement des tuto là-dessus.

          Psygho +++
Messages postés
156
Date d'inscription
vendredi 13 janvier 2006
Statut
Membre
Dernière intervention
2 mars 2009

Bon voilà solution trouvée après d'intense recherche et prises de tête pour une solution ... enfantine... et dire que j'ai carrément essayé des classes etc...

Process.Start("mailto:xxxx.xxxxx@xxxx.xxx")

Cette commande démarre un nouveau mail avec le client de messagerie par défaut de votre PC

LC

 
Merci beaucoup ( Vraiment beaucoup )
j'ai cherché pendant des heures
Messages postés
156
Date d'inscription
vendredi 13 janvier 2006
Statut
Membre
Dernière intervention
2 mars 2009

Bon je met à jour ce sujet car je viens trouver la solution pour le problème de base qui est de communiquer avec office.

Je vais tenter de faire un petite explication claire simple pour les prochains.

Dans beaucoup de sources sur internet on trouve des messages qui nous disent de commencer par ajouter la référence COM "Microsoft Office10.0 Object Library" (10.0 ; 11.0 ; 12.0 au chois selon la version d'office 2003 ; 2007 ...)
De cette manière je ne suis jamais arrivé à rien...

Voilà la solution que je vous propose:

1 - Rajouter la référence COM qui vous intéresse à votre projet:
             "Microsoft Excel 10.0 Objet Library" (pour Excel)
             "Microsoft Outlook10.0 Objet Library" (pour Outlook)
             etc......
2- Faire vos imports dans votre code
              Pour Outlook:
       Imports Microsoft.Office.Interop.Outlook
       Imports Microsoft.Office.Interop
               Pour Excel:
       Imports Microsoft.Office.Interop.Excel
       Imports Microsoft.Office.Interop
3- Vous avez enfin accès à toutes les méthodes et proprité dont avez besoin pour piloter vos programme office depuis vb.net.

Un exemple concret pour afficher un nouveau mail via Outlook:

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Dim myOl As Outlook.Application
        Dim myEmail As Outlook.MailItem

        myOl = New Outlook.Application
        myEmail = myOl.CreateItem(OlItemType.olMailItem)

        myEmail.Display()

    End Sub

End Class

Voilà, j'espère que cette petite explication dépannera beaucoup de gens qui se sont trouvé dans le même problème que moi en essayant de rajouter la mauvaise référence COM à son projet!

LC
Messages postés
156
Date d'inscription
vendredi 13 janvier 2006
Statut
Membre
Dernière intervention
2 mars 2009

Heu petit nota je voulais dire Visual Studio Express 2008
Messages postés
156
Date d'inscription
vendredi 13 janvier 2006
Statut
Membre
Dernière intervention
2 mars 2009

Salut,

Merci pour ta réponse mais je ne trouve rien sur le net qui me propose des tuto ou des exemples de l'utilisation de la fonction mailto ...
Je continu à chercher mais si tu connais déjà un lien intéressant je suis preneur :)

LC
Messages postés
23
Date d'inscription
dimanche 26 octobre 2008
Statut
Membre
Dernière intervention
9 mai 2010

Ensuite tu peux définir ton href dans ton code.
Messages postés
156
Date d'inscription
vendredi 13 janvier 2006
Statut
Membre
Dernière intervention
2 mars 2009

Oula,

Je ne suis pas si expérimenté que ca et mettre du code html dans mon code .net sous visual studio 2008 ... je suis perdu ...

J'ai besoin de quelques lumières stp sur ce que tu me propose de faire en fait car je ne suis pas sur de bien comprendre en réalité.

Merci d'avance :)

LC
Messages postés
23
Date d'inscription
dimanche 26 octobre 2008
Statut
Membre
Dernière intervention
9 mai 2010

Pas de soucis.

Donc dans ta page aspx tu intégres 

ce qui va t'afficher un lien dans ta page.

Ensuite dans ta page aspx.vb pour définir le href de ton mail tu écris:

id_mail.href = "destinataire@mail.com?SUBJECT=Sujet_mail&Body=corps_mail"

Donc à la place de sujet_mail et body_mail tu mets ce qui 'intéresse. tu peux aussi mettre "" si tu ne veux rien prédéfinir comme sujet et corps de ton message.
Messages postés
156
Date d'inscription
vendredi 13 janvier 2006
Statut
Membre
Dernière intervention
2 mars 2009

Au risque de passer pour un ignorant je suis noyé là ...

Dans ma page aspx dis tu ?

Je suis sous visual studio 2008 et je ne vois pas de page aspx ... j'ai mes fichiers .vb, mes forms, mes classes etc mais je ne vois pas ce que tu veux dire.

A la limite je suis sur msn ... whitelegend030@hotmail.com... où je pourrais passer des PrintScreen...

LC
Messages postés
156
Date d'inscription
vendredi 13 janvier 2006
Statut
Membre
Dernière intervention
2 mars 2009

je suis en train de programmer en vb.net et non en asp.net si ca fait une différence ... j'ai vu ces 2 appellation en haut de cette page....