Entwickler-Ecke
Internet / Netzwerk - BCC functioniert nicht richtig
jsfrigo - Do 25.09.08 10:35
Titel: BCC functioniert nicht richtig
Hallo
Ich möchte eine Mail mittels Mapi versenden.
Leider funktioniert die hier angegebene Übergabe der BCC-Empfänger nicht.
Ich rufe das ganze wie folgt auf:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| procedure Tfemail.SendeMapiMail( Adresse , BCC, nachricht : string ); var s : string; begin s :='Mailto: ' + Adresse ; if BCC <> '' then s := s + '?bcc=' + BCC ; s := s + '?subject=' + self.eBetreff.Text + '&Body=' + Nachricht; if ShellExecute(Application.Handle, 'open', PChar(s), NIL,NIL, SW_SHOWNORMAL) > 32 then ShowMessage('Mail gesendet!'); end; |
Wird eine BCC Adresse übergaben schreibt er noch ?subject in die BCC Zeile.
Übergebe ich keine BCC Adresse funktioniert alles einwandfrei.
Hat jemand eine Idee?
Moderiert von
Gausi: Delphi-Tags hinzugefügt
jaenicke - Do 25.09.08 10:57
Titel: Re: BCC functioniert nicht richtig
jsfrigo hat folgendes geschrieben: |
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| procedure Tfemail.SendeMapiMail( Adresse , BCC, nachricht : string ); var s : string; begin s :='Mailto: ' + Adresse ; if BCC <> '' then s := s + '?bcc=' + BCC ; s := s + '?subject=' + self.eBetreff.Text + '&Body=' + Nachricht; if ShellExecute(Application.Handle, 'open', PChar(s), NIL,NIL, SW_SHOWNORMAL) > 32 then ShowMessage('Mail gesendet!'); end; | |
Wenn ein BCC angegeben wurde, dann fügst du zweimal das ? hinzu, das müsste aber nach einem BCC ein & sein, denn subject ist ja nicht mehr der erste Parameter.
Vorschlag: füge das ? schon vorher hinzu, dann ggf. das BCC mit "BCC&", dann kommt danach subject usw. und es ist egal ob davor das BCC kam oder nicht.
jsfrigo - Do 25.09.08 11:54
Ja jetzt klappt es
Der funktionierende Quelltext lautet wie folgt
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| procedure Tfemail.SendeMapiMail( Adresse , BCC, nachricht : string ); var s : string; begin s :='Mailto: ' + Adresse + '?'; if BCC <> '' then s := s + 'bcc=' + BCC + '&'; s := s + 'subject=' + self.eBetreff.Text + '&Body=' + Nachricht; if ShellExecute(Application.Handle, 'open', PChar(s), NIL,NIL, SW_SHOWNORMAL) > 32 then ShowMessage('Mail gesendet!'); end; |
Moderiert von
Gausi: Delphi-Tags hinzugefügt. Bitte demnächst selber machen mit [delphi]...[/delphi] - Danke. :D
Hidden - Do 25.09.08 17:49
jsfrigo hat folgendes geschrieben: |
Delphi-Quelltext 1: 2:
| if ShellExecute() > 32 then ShowMessage('Mail gesendet!'); | |
Dann aber auch 'ne Fehlermeldung im else ;)
mfG,
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!