Thema: Delphi E_Mail

Einzelnen Beitrag anzeigen

oldmann

Registriert seit: 10. Okt 2008
Ort: Weyhe
138 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

E_Mail

  Alt 22. Jun 2020, 15:35
Hallo,

meine E-Mailroutine läuft seit Tokyo 10.2.2 nicht mehr.
Es kommt die Meldung 'Nutzerabruch'.
Ich finde da leider keinen Fehler und sie funktionierte ja sonst auch.
Vielleicht weiß von Euch jemand wo der Fehler steckt oder was sich in Tokyo 10.2.2 verändert hat.
Für Eure Hilfe wäre ich dankbar.

Gruss Oldmann


Delphi-Quellcode:
procedure TMemo_m.Button1Click(Sender: TObject);
var
  MMessage : TMapiMessage;
  Fehler : Integer;
  Empfaenger : Array[0..1] of TMapiRecipDesc;
  Absender : TMapiRecipDesc;
begin
  with MMessage do begin
    ulReserved := 0;
    lpszNoteText := PAnsiChar(AnsiString(Memo1.Lines.Text));
    lpszSubject := PAnsiChar(AnsiString('Datensatz Nr. '+IntToStr(satznum)+' aus Dateien '+svw1+'.Svw'));
    lpszMessageType := nil;
    lpszDateReceived := nil;
    lpszConversationID := nil;
    flFlags := 0;

    // Absender festlegen
    Absender.ulReserved:=0;
    Absender.ulRecipClass:=MAPI_ORIG;
    Absender.lpszName:= PAnsiChar(AnsiString('Absender'));
    Absender.lpszAddress:= PAnsiChar(''{AnsiString(Memo_ans.Edit3.Text)}); //Emailadresse Absender
    Absender.ulEIDSize:=0;
    Absender.lpEntryID:=nil;

    lpOriginator := @Absender;

    //Empfänger festlegen ... hier ein Empfänger
    nRecipCount := 1;
    Empfaenger[0].ulReserved:=0;
    Empfaenger[0].ulRecipClass:=MAPI_TO;
    Empfaenger[0].lpszName:= PAnsiChar('');//Empfängername
    Empfaenger[0].lpszAddress:= PAnsiChar(AnsiString(Memo_ans.Edit3.Text));//Emailadresse


// Empfaenger[0].lpszName:= PChar('');//Empfängername
// Empfaenger[0].lpszAddress:= PChar('');//Emailadresse
    Empfaenger[0].ulEIDSize:=0;
    Empfaenger[0].lpEntryID:=nil;

    lpRecips := @Empfaenger;

    nFileCount := 0;
    lpFiles := nil;
  end;
  Fehler := MapiSendMail(0, 0, MMessage, MAPI_DIALOG or MAPI_LOGON_UI or MAPI_NEW_SESSION, 0);
  case fehler of
    0 : ;
    MAPI_E_USER_ABORT : showmessage('Nutzerabbruch');
    else
      showmessage('Fehler');
  end;
end;
  Mit Zitat antworten Zitat