Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   MAPI Probleme (Office 2013 + Delphi 10 Seattle) (https://www.delphipraxis.net/186548-mapi-probleme-office-2013-delphi-10-seattle.html)

Balosh 10. Sep 2015 10:45

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:
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

himitsu 10. Sep 2015 11:00

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.

Bernhard Geyer 10. Sep 2015 11:16

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.

Balosh 10. Sep 2015 12:00

AW: MAPI Probleme (Office 2013 + Delphi 10 Seattle)
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1315440)
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.

Das mit dem direkt senden habe ich glaube ich etwas gelesen. Mhhh..
Habt ihr ne Idee wie ich das regeln kann, das wenn die Festplatte voll wird der Admin benachrichtigt wird über das lokale Netzwerk?

Sir Rufo 10. Sep 2015 12:13

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.

Bernhard Geyer 10. Sep 2015 12:57

AW: MAPI Probleme (Office 2013 + Delphi 10 Seattle)
 
Zitat:

Zitat von Balosh (Beitrag 1315448)
Das mit dem direkt senden habe ich glaube ich etwas gelesen. Mhhh..
Habt ihr ne Idee wie ich das regeln kann, das wenn die Festplatte voll wird der Admin benachrichtigt wird über das lokale Netzwerk?

In den meisten Firmennetzwerken wird das versenden über SMTP funktionieren.
Machen wir in genügend Installationen bei den ein Windows-Service Informationen an diverse User (auch Admins) versenden soll.

nahpets 10. Sep 2015 14:05

AW: MAPI Probleme (Office 2013 + Delphi 10 Seattle)
 
Emails vom Server... aus Batchdateien... haben wir immer mit Blat verschickt: http://www.msxfaq.de/tools/blat.htm

http://sourceforge.net/projects/blat/

mm1256 10. Sep 2015 23:31

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.

himitsu 11. Sep 2015 09:19

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.

sh17 11. Sep 2015 10:37

AW: MAPI Probleme (Office 2013 + Delphi 10 Seattle)
 
Zitat:

Zitat von Sir Rufo (Beitrag 1315451)
Ein zentraler Service, der solche Meldungen entgegen nimmt und dann von dort in die richtigen Kanäle leitet.

OK, gibts da was fertiges?


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:51 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz