Thema: Delphi Outlook - Ansteuerung

Einzelnen Beitrag anzeigen

shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#5

Re: Outlook - Ansteuerung

  Alt 25. Apr 2008, 14:28
Du hast doch einen integrierten Debugger in Delphi.
Welche Codezeile löst denn die Exception aus ?
OLE Exceptions haben manchmal mehr Informationen zu bieten, als man normalerweise sieht.
Siehe Code-Library: http://www.delphipraxis.net/internal...ct.php?t=22524

Hier nochmal dein Code (ich habe ein paar kleine Fehler entfernt):
Delphi-Quellcode:
procedure CreateOutlookTaskItem(aStart, aDueDate, aReminderTime: TDateTime;
   aSubject, aBody: string; aReminder: boolean);
var
   lNamespace, lOutlook, lFolder, lItem: OleVariant;
begin
  try
    loutlook := getactiveoleobject('outlook.application');
  except
    try
      loutlook := createoleObject('outlook.application');
    except
      // Exit; // nur Exit ist nicht gut. wir wollen schon wissen warum es nicht geklappt hat
      on E:Exception do
      begin
        E.Message := 'Outlook Task kann nicht angelegt werden'#13#10+ E.Message;
        raise;
      end;
    end;
  end;
    lNamespace := lOutlook.getnamespace('MAPI');
    lNamespace.Logon(EmptyParam, EmptyParam, False, True);
    lFolder := lNamespace.getdefaultfolder(13);

    lItem := lOutlook.createitem(3);
    lItem.StartDate := aStart;
    lItem.Subject := aSubject;
    lItem.Body := aBody;
    if (aDueDate <> 0) then
        lItem.DueDate := aDueDate;
    lItem.Categories := 'test';

    if (aReminder) then
    begin
       lItem.ReminderTime := DateTimeToStr(aReminderTime);
       lItem.ReminderSet := true;
    end
    else
       lItem.ReminderSet := false;

    lItem.Save;
    lNamespace.Logoff;

     // lItem := unassigned; // überflüssig, da lokale Variablen automatisch entsorgt werden
     // lOutlook := unassigned;
end;
Andreas
  Mit Zitat antworten Zitat