Bonjour,

j'ai plusieurs comptes dans mon Outlook. Quand j'envoi un message, le compte principale est utilisé par Défaut. Or, je souhaitera envoyer certain mails avec adresses expéditeur mon deuxième compte (secondaire).

J'ai essayé la façon suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
procedure TForm1.Button1Click(Sender: TObject);
const
  olMailItem = $00000000;
var
  Outlook: OleVariant;
  NameSpace: OleVariant;
  Expeditor: OleVariant;
  Mail: Variant;
Begin
  {Set New Mail}
  try
  Outlook := GetActiveOleObject('Outlook.Application');
  except
  Outlook := CreateOleObject('Outlook.Application');
  end;
  Mail := Outlook.CreateItem(olMailItem);
  NameSpace := outlook.GetNameSpace('MAPI');
  Expeditor := NameSpace.CreateRecipient('AddressSecondaire@test.com');
  Mail.Sender := Expeditor.AddressEntry;
  {Set Message Header}
  Mail.To := 'test@yahoo.com';
  Mail.Subject := 'Test';
  Mail.Body := 'This is a test message!';
  Mail.Display;
  {Finalize}
  VarClear(Expeditor);
  VarClear(NameSpace);
  VarClear(Outlook);
end;
L’envoi de message fonction, or le mail affiche comme expéditeur: AddressePrincipale@test.com de la part de AddressSecondaire@test.com". Comment définir une adresse expéditeur spécifique avant l'envoi de message ? Merci