![]() |
MAPI Probleme (Office 2013 + Delphi 10 Seattle)
Hallo zusammen,
habe da ein kleines Problem mit Mapi. Mein Programm soll automatisch eine Email verschicken wenn der Speicherplatz von einer Festplatte unter einem bestimmten Wert fällt. Es läuft auch soweit alles nur wenn es an das verschicken geht macht er mir MAPI_E_USER_ABORT. Hier mal der Code:
Code:
Habe vor kurzem von Office 2010 auf 2013 umgestellt. Hängt das vielleicht damit zusammen?
if AvailSpaceExt < 4000 then
// Email versenden begin Subject := 'Fesplatte fast voll'; MailText := 'Auf der Fesplatte sind weniger als 30 GB frei!!'; FromName := 'Server'; FromAdress := 'info@test.de'; ToName := 'test'; ToAdress := 'info@teset.de'; with MapiMessage do begin ulReserved := 0; // Betreff lpszSubject := PAnsiChar(Subject); // Body lpszNoteText := PAnsiChar(MailText); lpszMessageType := nil; lpszDateReceived := nil; lpszConversationID := nil; flFlags := 0; // Absender festlegen Absender.ulReserved := 0; Absender.ulRecipClass := MAPI_ORIG; Absender.lpszName := PAnsiChar(FromName); Absender.lpszAddress := PAnsiChar(FromAdress); Absender.ulEIDSize := 0; Absender.lpEntryID := nil; lpOriginator := @Absender; // Empfänger festlegen Empfaenger[0].ulReserved := 0; Empfaenger[0].ulRecipClass := MAPI_TO; Empfaenger[0].lpszName := PAnsiChar(ToName); Empfaenger[0].lpszAddress := PAnsiChar(ToAdress); Empfaenger[0].ulEIDSize := 0; Empfaenger[0].lpEntryID := nil; lpRecips := @Empfaenger; end; // Senden MError := MapiSendMail(0, Application.Handle, MapiMessage, 0, 0); case MError of MAPI_E_AMBIGUOUS_RECIPIENT: MessageDlg('Empfänger nicht eindeutig',mterror,[mbok],0); MAPI_E_BAD_RECIPTYPE: MessageDlg('Empfängertyp nicht MAPI_TO, MAPI_CC oder MAPI_BCC.',mterror,[mbok],0); MAPI_E_FAILURE: MessageDlg('Unbekannter Fehler.',mterror,[mbok],0); MAPI_E_INSUFFICIENT_MEMORY: MessageDlg('Nicht genug Speicher.',mterror,[mbok],0); MAPI_E_LOGIN_FAILURE: MessageDlg('Benutzerlogin fehlgeschlagen.',mterror,[mbok],0); MAPI_E_TEXT_TOO_LARGE: MessageDlg('Text zu groß.',mterror,[mbok],0); MAPI_E_TOO_MANY_RECIPIENTS: MessageDlg('Zu viele Empfänger angegeben.',mterror,[mbok],0); MAPI_E_UNKNOWN_RECIPIENT: MessageDlg('Empfänger nicht im Adressbuch gefunden',mterror,[mbok],0); MAPI_E_USER_ABORT: MessageDlg('Benutzer hat Senden abgebrochen oder MAPI nicht installiert.',mterror,[mbok],0); end; end Gruß Balosh |
AW: MAPI Probleme (Office 2013 + Delphi 10 Seattle)
MS Office und MAPI kannst du fast vergessen.
Bei Problemen haben wir inzwischen ein paar .Net-Konsolenprogramme zwischengeschaltet, welche über die Mail-APIs des .NET mit dem Office reden. Und dafür waren auch noch je eine 32- und eine 64-Bit-Version nötig, da Office64 und Office32 anders reagieren. |
AW: MAPI Probleme (Office 2013 + Delphi 10 Seattle)
MS Office und MAPI funktionieren fast immer.
Es gibt ein paar Fallstricke: - Update einer bestehenden Office-Version macht teilweise MAPI kaputt - Vor ein paar Monaten hat MS in einem Windows-Update MAPI in einer bestimmten Windows <-> MS-Office-Version kaputt gemacht (MAPI-DLL war scheinbar nur für neuere Windowsversionen funktionsfähig). Der Kunde hat dann eine alte MAPI-DLL reinkopiert und es hat wieder geklappt - Direktes senden geht (seit Jahren) nicht. "I-LOVE-YOU"-Wurm sei dank. |
AW: MAPI Probleme (Office 2013 + Delphi 10 Seattle)
Zitat:
Habt ihr ne Idee wie ich das regeln kann, das wenn die Festplatte voll wird der Admin benachrichtigt wird über das lokale Netzwerk? |
AW: MAPI Probleme (Office 2013 + Delphi 10 Seattle)
Eine weitaus bessere Idee ist es sich nicht von der korrekten Mail-Installation und zugehöriger Infrastruktur abhängig zu machen.
Ein zentraler Service, der solche Meldungen entgegen nimmt und dann von dort in die richtigen Kanäle leitet. Jetzt sind viele (Rechner) nur noch von einem (zentraler Service) abhängig und diesen einen kann man wesentlich leichter administrieren. |
AW: MAPI Probleme (Office 2013 + Delphi 10 Seattle)
Zitat:
Machen wir in genügend Installationen bei den ein Windows-Service Informationen an diverse User (auch Admins) versenden soll. |
AW: MAPI Probleme (Office 2013 + Delphi 10 Seattle)
Emails vom Server... aus Batchdateien... haben wir immer mit Blat verschickt:
![]() ![]() |
AW: MAPI Probleme (Office 2013 + Delphi 10 Seattle)
Hallo,
Systemmails (z.B. Error-Logs) versende ich niemals mit MAPI. Eine TIdSMTP und eine TIdMessage, als Empfänger eine eigens dafür angelegte Mail-Adresse (u.A. auch wegen der Zugangsdaten, ich lass mir doch nicht meinen normalen Mailaccount hacken), und gut isses. |
AW: MAPI Probleme (Office 2013 + Delphi 10 Seattle)
Wir haben vorallem Probleme mit Dateianhängen in Mails.
Vorallem da jeder Kunde eine etwas andere Mailumgebung hat und da ganz besonders schlimm in Verbindung mit MS Exchange Servern, winmail.dat usw. :wall: Echt schlimm, daß man es nach Jahrzehnten nicht schafft, bzw. nicht schaffen will, daß die grundlegenden Funktionen überall gleich funktionieren. |
AW: MAPI Probleme (Office 2013 + Delphi 10 Seattle)
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:23 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz