Einzelnen Beitrag anzeigen

Balosh

Registriert seit: 21. Apr 2015
31 Beiträge
 
Delphi 10 Seattle Professional
 
#1

MAPI Probleme (Office 2013 + Delphi 10 Seattle)

  Alt 10. Sep 2015, 10:45
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:
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
Habe vor kurzem von Office 2010 auf 2013 umgestellt. Hängt das vielleicht damit zusammen?

Gruß
Balosh
  Mit Zitat antworten Zitat