Moin,
könnt mich mal jemand in die richtige Richtung treten? Ich versuche durch die geöffneten Mails von Outlook iterieren
und bei einer bestimmten Mail einen Anhang hinzuzufügen.
In C# kriege ich das wie folgt zum Laufen:
Code:
using O = Microsoft.Office.Interop.Outlook;
O.Application app = new O.Application();
O.MailItem mail = null;
for (int i = 0; i < app.Inspectors.Count; i++)
{
if (app.Inspectors[i + 1].Caption.Contains("Bestellung "))
{
mail = app.Inspectors[i + 1].CurrentItem;
Console.WriteLine(mail.Subject);
}
}
if (mail != null)
{
mail.Attachments.Add(outFile);
}
Analog dazu in Delphi dachte ich mir dann folgendes:
Delphi-Quellcode:
var
Inspector,
Outlook,
Mail: Variant;
Outlook := GetActiveOleObject('Outlook.Application');
for i := 0 to Outlook.Inspectors.Count - 1 do
begin
Inspector := Outlook.Inspectors[i + 1]; // Error: Unzulässige Parameteranzahl
if Inspector.Caption.Contains('Bestellung') then
begin
mail := Outlook.Inspectors[i + 1].CurrentItem;
end;
end;
mail.Attachments.Add(Anhang);
Nuja ich schätze mal, irgendwas fehlt, damit Delphi erkennt was Outlook.Inspectors für ein
CollectionObject ist um es auch abfragen zu können.
Aus dem
MSDN Artikel werde ich aber nicht sonderlich schlau.