Hy @ all,
leider gibt's ja keine vernünftige Literatur sowie keine Möglichkeit Makros unter Outlook2000 aufzuzeichnen um folgende Aufgabe zu lösen.

Idee: Per Delphi einen Auftrag im Postfach eines anderen Benutzers anlegen.
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: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53:
| function TForm1.OutlookAufgabeEintragen(strPostfach, strSubject, strBody, strStatus, strTo: String; tdtTermin, tdtFaellig: TDateTime): String; var aOutlook : Variant; aMapi : Variant; aTask : Variant; aTaskItem : Variant; aReci : Variant; Absender : TMapiRecipDesc; begin try aOutlook := CreateOLEObject('Outlook.Application'); aMapi := aOutlook.getNamespace('MAPI');
//* Aufgabe zu den Outlook-Aufgaben eines Benutzers hinzufügen if strPostfach <> '' then begin aReci := aMapi.CreateRecipient(strPostfach); // zuständige Person try aTask := aMapi.GetSharedDefaultFolder(aReci, $0000000D); except ShowMessage('Outlook kennt mindestens einen Namen nicht. Die Aufgabe '+ 'kann nicht in die Outlook-Aufgaben eingetragen werden.'); Exit; end; end else begin //* Aufgabe zu den eigenen Outlook-Aufgaben hinzufügen try aTask := aMapi.GetDefaultFolder($0000000D); except ShowMessage('Outlook kennt mindestens einen Namen nicht. Die Aufgabe kann '+ 'nicht in die Outlook-Aufgaben eingetragen werden.'); Exit; end; end; aTaskItem := aTask.Items.Add($00000003); aTaskItem.Subject := strSubject; //* WideString aTaskItem.Body := strBody; //* WideString aTaskItem.Status := strStatus; //* WideString aTaskItem.StartDate := tdtTermin; //* DateTime aTaskItem.DueDate := tdtFaellig; //* DateTime aTaskItem.Display; //* Aufgabe anzeigen aTaskItem.Save; aTaskItem.Assign; aTaskItem.Recipients.Add(strTo); //* WideString aTaskItem.Send;
Result := aTaskItem.EntryID; except ShowMessage('Der Outlook-Aufgabeneintrag kann nicht geöffnet werden, '+ 'da auf diesem PC kein Outlook installiert ist.'); Result := ''; end; end; |
Klappt bis auf die anzeige von ca. 4-5 Warnungen von Outlook, daß jemand fremdes auf die email...blabla zugreift.
Ist natürlich megaärgerlich!
Die 3 Zeilen Code (.assign - .send) erreichen, daß der Empfänger die Aufgabe vorgeschlagen bekommt. Werden Sie weggelassen, erfolgt der Eintrag stillschweigend.
Aus anderen Einträgen habe ich dann die Prozedur:
Zitat: |
SendMail(Subject,Mailtext, FromName,FromAdress, ToName, ToAdress, AttachedFileName, DisplayFileName:string; ShowDialog:boolean); |
von Christian "NineBerry" Schwarz benutzt aber die mail kam immer mit unzustellbar zurück!!
Kann mir jemand beim Ausschalten dieser Warnmeldungen helfen oder eine ähnlich gestaltete Prozedur like
SendMail geben, damit ich den Empfänger auf seine neuen ToDo's hinweise?

they only gosub ..... aaaargh