現時点では、MAPIを使用してアプリケーションから平文の電子メールを送信しています。ユーザーがこの関数を呼び出すとダイアログフラグが指定され、電子メールクライアントに電子メールが表示され、変更して送信できます。電子メールをHTML形式で送信
私たちは電子メールを書き出し、HTML形式で送信したいと考えています。
このリンクMSDNリンクMAPIによると、私は(試していない、あなたがそれを行うにはMAPIを使用することができますが、私は、Outlookで動作する例を得ることができないと言うExpertsExchangeの記事を見てきました。このhttp://support.microsoft.com/kb/268440
ためsutiableされていませんが他のクライアント)
procedure ShowMailDlg(ToName,Address,HTMLMessage: string);
var
li: integer;
lMessage: TMapiMessage;
lRecipArray: array of TMapiRecipDesc;
lREs: DWord;
begin
SetLength(lRecipArray,1);
lRecipArray[0].ulRecipClass:=MAPI_TO;
lRecipArray[0].lpszName:=pChar(ToName);
lRecipArray[0].lpszAddress:=pChar(Address);
lMessage.ulReserved:=0;
lMessage.lpszSubject:=nil;
lMessage.lpszNoteText:=pChar(HTMLMessage);
lMessage.lpszMessageType:= nil;//pChar('HTML');
lMessage.lpszDateReceived:=nil;
lMessage.lpszConversationID:=nil;
lMessage.flFlags:=0;
lMessage.lpOriginator:=nil;
lMessage.nRecipCount:=length(lRecipArray);
lMessage.lpRecips:=PMapiRecipDesc(lRecipArray);
lMessage.nFileCount:=0;
lMessage.lpFiles:=PMapiFileDesc(nil);
lRes:=MapiSendMail(0, 0 , lMessage,MAPI_DIALOG, 0);
end;
私はこれをどのように行うことができますか?私はおそらく、Outlookを自動化することができますが、私はかなり独立した電子メールクライアント(したがってMAPI)の
おかげ
更新それを維持したいと思います:提案のためのみんなに感謝を。この機能は、よく使われている質問ではないので、SMTPの詳細を設定するようユーザーに依頼することは本当にオプションではありません。私はプレーンテキストのメールに固執すると思います。
おかげ
残念ながら、MAPIのようなユーザーの既定の電子メールクライアントで電子メールがポップアップ表示されません。 –