So, das ist die Lösung, mit der ein mail auch grösser als 2000 Zeichen sein kann, wenn man es an das Standard-mailprogramm übergibt.
Nur - weiss jemand, wie ich das auf "maximiert" stelle ??? Bei mir geht immer nur ein kleines Fenster auf...
Delphi-Quellcode:
procedure TForm1.SendMail(adresse, betreff, mailtext : string);
var
MapiMessage: TMapiMessage;
MapiRecipDesc: TMapiRecipDesc;
MError: Cardinal;
begin
FillChar(MapiRecipDesc, SizeOf(TMapiRecipDesc), 0);
with MapiRecipDesc do
begin
ulReserved := 0;
ulRecipClass := MAPI_TO;
lpszName := PChar(adresse); // Adresse
lpszAddress := nil;
ulEIDSize := 0;
lpEntryID := nil;
end;
FillChar(MapiMessage, SizeOf(TMapiMessage), 0);
with MapiMessage do
begin
ulReserved := 0;
lpszSubject := PChar(betreff); // Betreff des mails
// lpszSubject := nil;
lpszNoteText := PChar(mailtext); // Text des mails (body)
// lpszNoteText := nil;
lpszMessageType := nil;
lpszDateReceived := nil;
lpszConversationID := nil;
flFlags := 0;
lpOriginator := nil;
nRecipCount := 1; // nRecipCount muß auf Anzahl der MapiRecipDesc gesetzt werden;
lpRecips := @MapiRecipDesc; // lpRecips muß auf die Adresse MapiRecipDesc gesetzt werden;
nFileCount := 0;
lpFiles := nil;
end;
MError := MapiSendMail(0, Application.Handle, MapiMessage,
MAPI_DIALOG or MAPI_LOGON_UI or MAPI_NEW_SESSION, 0);
if MError <> 0 then
begin
MessageDlg('Nachricht wurde nicht gesendet...', mtError, [mbOK], 0);
end;
end;
[edit=Luckie]Delphi-Tags. Mfg, Luckie[/edit]