Einzelnen Beitrag anzeigen

OLLI_S

Registriert seit: 20. Aug 2006
19 Beiträge
 
Delphi 7 Architect
 
#6

Re: Formattierung vom Body bei Aufgaben

  Alt 24. Nov 2007, 16:27
Hallo,

ich bin leider längere Zeit nicht zum Programmieren gekommen, daher konnte ich das nicht nachvollziehen.

Zuerst mal meine Sourcen, wie ich meine Aufgaben (Tasks) aus Outlook auslese (bei einem ButtonClick).
Damit es nicht zu viele Sourcen werden, habe ich nur die jeweils relevanten Teile geschrieben.
Der ursprüngliche Code ist natürlich länger....

Delphi-Quellcode:

procedure TForm1.Button1Click(Sender: TObject);

var
   Outlook, NameSpace, Tasks, Task: OleVariant;
   TotalTasksCount: Integer;
   Counter: Integer;

const
   olFolderTasks = 13;

begin
   Outlook := CreateOleObject('Outlook.Application');
   NameSpace := Outlook.GetNameSpace('MAPI');

   Tasks := NameSpace.GetDefaultFolder(olFolderTasks);

   TotalTasksCount := (Tasks.Items.Count);

   if TotalTasksCount = 0 then begin // There are NO tasks in Outlook

      ShowMessage('You have NO Tasks stored in Outlook!');

   end else begin // There ARE tasks in Outlook

      for Counter := 1 to TotalTasksCount do begin

         Task := Tasks.Items.Item(Counter);
         mmoLog.Lines.Add('Subject/Betreff : ' + Task.Subject);
         mmoLog.Lines.Add('Attachments Counter/Anzahl Anhänge : ' + IntToStr(Task.Attachments.Count));
         mmoLog.Lines.Add(Task.Body);

      end; // of counter loop

   end; // There ARE tasks in Outlook

   Outlook := UnAssigned;

end;
Dieses Beispiel fügt aus allen Aufgaben den Betreff, die Anzahl von Anhängen und den Body in ein Memo-Feld hinzu.
Das ganze funktioniert sehr gut.
Das einzige Problem ist, dass Body keine Formatierungen mitliefert.

Ich habe eine Aufgabe angelegt, die einen formatierten Body hat.
Diese hat bei Task.Attachments.Count den Wert 0.
Also haben formatierte Aufgaben keine Attachments.

Greife ich auf Task.HTMLBody zu, wird eine Exception geworfen (Methode "HTMLBody" wird vom Automatisierungsobjekt nicht unterstützt).

Der User Remko meinte "For RTF and plaintext the body is in the body property".
Wenn ich aber den Body der einen Aufgabe in ein RTF Control reinschreibe (und nicht in ein TMemo) dann wird der auch nicht formatiert angezeigt (da ja in der Outlook-VBA-Hilfe steht "Gibt einen String zurück, der den unformatierten Textkörper des Microsoft Outlook-Elements darstellt...").

Wie komme ich also an den formatierten Body einer Aufgabe ran?
Also nicht der Body einer Mail......

Danke und Gruß


OLLI
  Mit Zitat antworten Zitat