Email+Body -> wiele linii

0

Jak w sekcji BODY wysyłanego emaila (bez komponentów - standardowo) wpisać kilka linijek zdań jedna pod drugą ? :-|

var
em_subject, em_body, em_mail : string;
begin
em_subject := 'Temat';
em_body := 'Przykład_wysyłania_emiala.' + chr(13) + chr(10) + chr(13) + chr(10) + 'Nowe_zdanie_od_następnej_linijki.';

em_mail := 'mailto:[email protected]?subject=' +
em_subject + '&body=' + em_body ;

ShellExecute(Handle,'open', PChar(em_mail), nil, nil, SW_SHOWNORMAL);
end;

Tekst "Nowe zdanie od następnej linijki."zamiast w linijce pod spodem jest obok:
"Przykład_wysyłania_emiala.zdanie_od_następnej_linijki."

Na pewno nie działają takie sposoby: :(

  • zamiana chr(13) na #13
  • sekcja body jako Memo.Lines.Text

źródło: http://forums.devshed.com/archive/t-222209/ShellExecute-and-Emailing

Jak zrobić, aby tworzyć nowe linijki zdań w emailu ?
Jak na razie tylko taki mam pomysł:
Wpisać zawartość do pliku EML

ListBox.Items.Add('Date: Wed, 9 Feb 2005 00:00:00 +0100');
ListBox.Items.Add('From: <' + AdresEmailOdNadawcy.Text + '>');
ListBox.Items.Add('Reply-To:');
ListBox.Items.Add('Organization:');
ListBox.Items.Add('X-Priority: 3 (Normal)');
ListBox.Items.Add('Message-ID: <[email protected]>');
ListBox.Items.Add('To: [email protected]');
ListBox.Items.Add('Subject: ' + TematEdit.Text);
ListBox.Items.Add('MIME-Version: 1.0');
ListBox.Items.Add('Content-Type: text/plain; charset=Windows-1250');
ListBox.Items.Add('Content-Transfer-Encoding: 8bit');
ListBox.Items.Add('');
ListBox.Items.Add(Memo.Lines.Text);
ListBox.Items.SavoToFile(ExtractFilePath(Application.ExeName) + '\wyslij.eml');

i uruchomic plik wyslij.eml przez klienta poczty.

Ma ktoś inny pomysł ?? :)

0

Może wyślij tego maila w postaci HTML i do obsługi nowych linii lub innych bajerów użyj po prostu znaczników zamiast kodów sterujących. Przyznam, że nie próbowałem wysyłać dzięki Delphi wieloliniowych maili.

0

zdaje sie, ze najpierw powinno byc chr(10), a potem chr(13);

lancuch:='linijka'+#10#13+'druga linijka';
0
kubARek napisał(a)

zdaje sie, ze najpierw powinno byc chr(10), a potem chr(13);

lancuch:='linijka'+#10#13+'druga linijka';

Nie działa :0 To samo.

A jak np: pisze "Zdanie pierwsze drugie" to w mejlu jest tylko "Zadanie" a żeby by ła całość to trzeba tak: "Zdanie_pierwsze_drugie"

Jedyny sposób (rozwiązany) to zamiana spacji na np znak: _

0

wysylaj mail jako html i dawaj < br > :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1