AW: Daten aus Delphi in Thunderbird einfügen.
11. Feb 2019, 10:19
Hallo,
erst mal Danke für das rege Interesse an meinem Problem.
Erst mal ein paar Hinweise zu Euren Fragen.
Thunderbird war zum Senden in HMTL und Reintext eingestellt.
Auch wenn ich nur Reintext einstelle ist das Problem das gleiche.
Im Memo ist "Courier New" eingestellt.
Die Zwischenräume sind mit Leerzeichen aufgefüllt.
Memo1 enthält den Text.
Memo1 wird gefülllt mit:
Form17.Memo1.Lines.Add(FilterGrid1.cells[0,2]+' '+zahl+' '+preis);
Der Datentransport sieht folgendermassen aus:
var
MMessage : TMapiMessage;
Fehler : Integer;
Empfaenger : Array[0..1] of TMapiRecipDesc;
Absender : TMapiRecipDesc;
m_text:string;
begin
If CheckBox1.checked = true Then m_text:=Memo2.Text;
with MMessage do begin
ulReserved := 0;
lpszNoteText := PAnsiChar(AnsiString(Memo1.text+#10+m_Text));
lpszSubject := PAnsiChar(AnsiString(Edit11.text));
lpszMessageType := nil;
lpszDateReceived := nil;
lpszConversationID := nil;
flFlags := 0;
// Absender festlegen
Absender.ulReserved:=0;
Absender.ulRecipClass:=MAPI_ORIG;
Absender.lpszName:= PAnsiChar('Absender');
Absender.lpszAddress:='';//PAnsiChar(AnsiString(Memo1.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
if RadioButton1.Checked=True then
Empfaenger[0].lpszAddress:= PAnsiChar(AnsiString(Edit8.Text));//Emailadresse
if RadioButton2.Checked=True then
Empfaenger[0].lpszAddress:= PAnsiChar(AnsiString(Edit9.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;
Close;
Copy1;
end;
gruß Oldmann
|