Partager via


MailEnvelope, classe

Représente un message électronique personnalisé pour l'envoi du formulaire actif sous forme de pièce jointe.

Espace de noms : Microsoft.Office.InfoPath
Assembly : Microsoft.Office.InfoPath (dans microsoft.office.infopath.dll)

Syntaxe

Public MustInherit Class MailEnvelope

Dim instance As MailEnvelope
public abstract class MailEnvelope

Remarques

La classe MailEnvelope comprend des propriétés permettant de créer par programmation un message électronique personnalisé en y joignant le formulaire InfoPath ouvert. Une fois les adresses de messagerie et d'autres propriétés spécifiées, la définition de la propriété Visible de la classe MailEnvelope avec la valeur true entraîne l'affichage des champs du message, de la barre d'outils Envoyer et du volet Office Options du message ainsi que du formulaire, afin que les utilisateurs puissent revoir, modifier et compléter le message avant envoi. Le code écrit pour fonctionner avec un objet MailEnvelope correspond à la commande Envoyer au destinataire du message du menu Fichier lors de l'édition d'un formulaire dans InfoPath.

Remarque

La classe MailEnvelope ne peut pas être utilisée pour envoyer les messages électroniques qu'elle crée ; les utilisateurs doivent les envoyer manuellement avec le bouton Envoyer dans InfoPath.

Vous pouvez également utiliser la méthode ShowMailItem de la classe View pour créer un message électronique par programmation, avec un formulaire en pièce jointe. D'autre part, si le modèle de formulaire a été configuré pour l'envoi en tant que message électronique, vous pouvez utiliser les propriétés et les méthodes de la classe EmailSubmitConnection pour créer et envoyer le formulaire par programmation sous forme de pièce jointe.

Exemple

Dans l'exemple suivant, la propriété EmailSubmitConnection de la classe Window est utilisée pour définir une référence à l'objet MailEnvelope pour le formulaire actif. La propriété Available est utilisée pour déterminer si le formulaire est ouvert dans Microsoft Office Outlook 2007. Si c'est le cas, la propriété Available renverra false et le code suivant ne s'exécutera pas. Si la propriété Available renvoie true, le formulaire s'ouvre dans InfoPath et les valeurs d'adresse initiale, d'objet et d'introduction sont spécifiées. La propriété EmailAttachmentType de la classe MailEnvelope est utilisée pour configurer le message pour inclure à la fois les données et le modèle du formulaire. Enfin, la propriété Visible de la classe MailEnvelope prend la valeur true pour afficher les champs du message électronique, la barre d'outils Envoyer et le volet Office Options du message pour que l'utilisateur envoie son message depuis InfoPath.

// Set a reference to MailEnvelope object.
MailEnvelope myEnvelope = this.Application.ActiveWindow.MailEnvelope;

// Check to see if form is open in Outlook 2007.
if (myEnvelope.Available)
{
   // Specify addresses, subject, and introduction.
   myEnvelope.To = "someone@example.com";
   myEnvelope.CC = "someone@example.com";
   myEnvelope.BCC = "someone@example.com";
   myEnvelope.Subject = "Open this form";
   myEnvelope.Introduction = "InfoPath is required to edit this form.";

   // Include form template with form.
   myEnvelope.EmailAttachmentType = EmailAttachmentType.XmlXsn;

   // Display form with e-mail envelope.
   myEnvelope.Visible = true;
}
else
{
   // The form is open in Outlook 2007, and code will not run.
   MessageBox.Show("This form is open in Outlook 2007.");
}
' Set a reference to MailEnvelope object.
Dim myEnvelope As MailEnvelope  = _
   Me.Application.ActiveWindow.MailEnvelope;

' Check to see if form is open in Outlook 2007.
If (myEnvelope.Available) Then
   ' Specify addresses, subject, and introduction.
   myEnvelope.To = "someone@example.com"
   myEnvelope.CC = "someone@example.com"
   myEnvelope.BCC = "someone@example.com"
   myEnvelope.Subject = "Open this form"
   myEnvelope.Introduction = "InfoPath is required to edit this form."

   ' Include form template with form.
   myEnvelope.EmailAttachmentType = EmailAttachmentType.XmlXsn

   ' Display form with e-mail envelope.
   myEnvelope.Visible = True
Else
   ' The form is open in Outlook 2007, and code will not run.
   MessageBox.Show("This form is open in Outlook 2007.")
End If

Hiérarchie d'héritage

System.Object
  Microsoft.Office.InfoPath.MailEnvelope

Sécurité des threads

Les membres statiques publics de ce type (Shared en Visual Basic) sont sécurisés au niveau des threads. Il n'est pas garanti que les membres d'instance soient sécurisés au niveau des threads.

Voir aussi

Référence

Membres MailEnvelope
Microsoft.Office.InfoPath, espace de noms