"Michael [2800]" <DenHerEMailBrugesKunTilJunk@privat.dk> wrote in
news:3e43cab5$0$178$edfadb0f@dread16.news.tele.dk:
>
> Jeg har lidt tekst dvs. 2 linier ( txt[nn] ) af typen TStrings som
> jeg vil "sende" via PChar, men de 2 linier bliver til én linie.
> Hvordan for jeg de 2 linier til at forblive 2 linier a la:
>
> S := txt[0] + #13#10 + txt[1]; //det virker bare ikke med #13#10
>
> var
> S: String;
> begin
> S := txt[0]+txt[1];
>
>
> ShellExecute(Handle, 'open', PChar('mailto:bla@bla.dk?body=' +S ),
> nil,
> nil, SW_SHOWNORMAL);
> ...
procedure TForm1.Button4Click(Sender: TObject);
var
sl:TStringlist;
s: String;
begin
sl := TStringList.Create;
try
sl.Add('Hej');
sl.Add('med');
sl.Add('dig');
s := StringReplace(sl.Text, #13#10, '%0D%0A', [rfReplaceAll]);
finally
sl.free;
end;
ShellExecute(self.Handle, 'open', PChar('mailto:bla@bla.dk?body=' +S),
nil, nil, SW_SHOWNORMAL);
end;
Nu har det ikke så meget med PChar at gøre, men problemet er at
postprogrammet ikke oversætter #13#10 til linieskift - men er der tale om
f.eks. outlook kan ovenstående bruges (og sikkert også andre
mailprogrammer), der sikrer at linieskift i teksten bliver urlencoded
(eller hvad det nu hedder :) ) og det kan Outlook forstå.
/Claus
--
Claus Christiansen, <mailto:NOSPAM@unipeople.dk>, leave the adr. as it is
personal: <
http://unipeople.dk/~cch>; pythia: <
http://www.pythia.dk>
===========================================================--------------
"Computers are useless. They can only give you answers" - Pablo Picasso