Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Daten aus Delphi in Thunderbird einfügen. (https://www.delphipraxis.net/199668-daten-aus-delphi-thunderbird-einfuegen.html)

oldmann 10. Feb 2019 18:46

Delphi-Version: 10.2 Tokyo

Daten aus Delphi in Thunderbird einfügen.
 
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo,

Ich arbeite mit Delphi Tokyo 10.2 und Windows 10.
Ich bin dabei aus einem Delphi Programm Daten in ein Memo einzulesen und dann das Memo in mein E-Mail Programm Thunderbird exportieren.
In der Memo sind die Daten ordentlich formatiert.
Wenn Sie aber im E-Mailprogramm eingefügt wurden ist jegliche Formatierung verschwunden.
Die im Memo eingefügten Leerzeichen sind alle verschwunden.
Das ist mir eigentlich unverständlich, da Leerzeichen ja auch Zeichen sind.
Ich habe mal 2 Screenshots angehängt.
Das erste "Kosten000.jpg" zeigt wie die Daten im Memo aussehen und das zweite "Thunderbird000.jpg" zeigt wie sie in der E-Mail ankommen.

Vielleicht weiß ja jemand von Euch wie man das Problem lösen kann.
Ich möchte schon gerne, dass Die Daten in der E-Mail genauso formatiert werden wie sie in der Memo sind.
Ich würde mich freuen, wenn mir jemand hier helfen könnte.

Gruß Oldmann

Delphi.Narium 10. Feb 2019 19:12

AW: Daten aus Delphi in Thunderbird einfügen.
 
Sind im Memo Tabulatoren, so dass der Text dort optisch anders formatiert ist?

Auf welchem Weg bekommst Du überhaupt die Daten ausgetauscht? Geht auf dem "Weg" was verloren?

Ohne genauere Infos zur Art der Datenübergabe, kann man da kaum sinnvolle Hilfestellung geben. Die Info "Ich hab' zwei Programme und die Daten aus dem einen sehen im anderen anders aus!", ist etwas dürftig.

Wenn im Delphiprgramm die Auffüllung zwischen Text und Betrag per Leerzeichen erfolgt, könnte es auch sein, dass auf dem Weg nach Thunderbird mehrfache Leerzeichen durch ein einzelnes Leerzeichen ersetzt werden. Könnte bei Tabulatoren analog sein.

Luckie 10. Feb 2019 21:03

AW: Daten aus Delphi in Thunderbird einfügen.
 
Nö. Die Leerzeichen sind noch da. Sie nach den Ziffern von der Nummerierung. Was aber verloren geht, scheinen die Tabs (#9) zu sein.

Delphi.Narium 10. Feb 2019 21:20

AW: Daten aus Delphi in Thunderbird einfügen.
 
Nö, es scheint immer nur ein Leerzeichen da zu sein, ob es vorher mal viele waren oder Tabs oder 'ne beliebige Kombination aus Leerzeichen und/oder Tabs, kann man den Screenshots nicht entnehmen.

blawen 10. Feb 2019 23:16

AW: Daten aus Delphi in Thunderbird einfügen.
 
Zitat:

Zitat von Delphi.Narium (Beitrag 1425211)
Nö, es scheint immer nur ein Leerzeichen da zu sein, ob es vorher mal viele waren oder Tabs oder 'ne beliebige Kombination aus Leerzeichen und/oder Tabs, kann man den Screenshots nicht entnehmen.

Da im ersten Bild die Beträge jeweils ohne Versatz aufgelistet werden, müssen eigentlich Tabs im Spiel sein.

Schokohase 10. Feb 2019 23:24

AW: Daten aus Delphi in Thunderbird einfügen.
 
Zitat:

Zitat von blawen (Beitrag 1425213)
Zitat:

Zitat von Delphi.Narium (Beitrag 1425211)
Nö, es scheint immer nur ein Leerzeichen da zu sein, ob es vorher mal viele waren oder Tabs oder 'ne beliebige Kombination aus Leerzeichen und/oder Tabs, kann man den Screenshots nicht entnehmen.

Da im ersten Bild die Beträge jeweils ohne Versatz aufgelistet werden, müssen eigentlich Tabs im Spiel sein.

Sieht für mich nach Courier New aus und nur mit Leerzeichen (so hat es der OP auch gesagt)

Dalai 10. Feb 2019 23:31

AW: Daten aus Delphi in Thunderbird einfügen.
 
Vermutlich ist im Thunderbird HTML eingestellt für das Verfassen neuer Mails. Im Textmodus können auch mehrere aufeinanderfolgende Leerzeichen und vermutlich auch Tabs eingefügt werden.

Grüße
Dalai

oldmann 11. Feb 2019 09:19

AW: Daten aus Delphi in Thunderbird einfügen.
 
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

ConnorMcLeod 11. Feb 2019 09:57

AW: Daten aus Delphi in Thunderbird einfügen.
 
Kannst Du vllt mal zu Fuß einfach Stringliterale einfügen, ohne das Ganze drumherum? Und beobachten, was drüben ankommt?
Delphi-Quellcode:
lpszNoteText := PAnsiChar(AnsiString('testblah'));
usw...

oldmann 11. Feb 2019 10:56

AW: Daten aus Delphi in Thunderbird einfügen.
 
Hallo,

das sieht auch nicht besser aus.
Eingegeben habe ich:
'teststring abc'
Im Mailprogramm angekommen ist:
teststring abc

oldmann


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:25 Uhr.
Seite 1 von 3  1 23      

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