私に同行してください。長い話があります。 Delphi-7からプログラム的にHTML電子メールを作成し、Outlookに送信し、その中に画像を表示しないため、そのことについて何も知らない場合は、すべて読んでください。イメージファイルのある場所をOutlookに伝える方法は?
私は、Delphi-7プログラムからOutlookに可変テキストの電子メールを送信するアプリケーションを持っています。私はTMailInfoアイテムを使用しています。レイアウト用にテンプレートHTMLファイルを使用し、プレースホルダをプログラムのデータで置き換えます(%NAME%は "Johnson"となります)。新しいOutlookメッセージを作成し、HTMLbodyに結果を移入します。これらはすべて正常に動作します。
最近私のクライアントから新しいサンプルメッセージが送られてきました。このメールを新しいレイアウトに変更することができるかどうか尋ねました。だから私は電子メールをHTML(Outlookから、私のような非HTMLの達人にはほとんど理解できない巨大なHTMLファイルを生成する)として保存し、静的データを私のプレースホルダに置き換えて、新しいテンプレート。
これは、1つのことを除いてはうまくいきました。新しいレイアウトにはローカルの写真がいくつか含まれていました(パブリックウェブリソースからは利用できません)。 Outlookからの元のサンプルメールが作成されたとき、htmlファイルには "Subject"という名前のhtmファイルと、 "subject_files"というフォルダがあり、画像ファイルとfilelist.xmlとmsoファイルが含まれています。
生成されたHTMLは、SRC =「subject_files/image001.jpg」として絵を指し>など
私はOutlookにHTMLを送信すると、それは明らかにイメージがあるないアイデアを持っていない - しかし、どのように私はやります彼に伝えて?
は、いくつかの形式での画像へのリンクをハードコーディング "subject_files" フォルダに "マイドキュメント"
(すなわち
SRCをコピー:私が試した何
= "C:/test/subject_files/image001.jpg"、
src = "C:// test/subject_fiレ/ image001.jpg」、
SRC = "C:\テスト\ subject_files \ image001.jpg"、
など
が、両方が動作しません...ので、私の質問は実際には、HTMLメッセージをプログラム的に作成するときにOutlookにイメージファイルを探す場所を教えてください。
ありがとうございます!
第3の選択肢は、画像に「Content-ID」値が割り当てられた電子メールに画像を添付することです。そして、HTMLは ''を使ってそれらの添付ファイルを参照することができます。 –
オプション番号2はOutlookでは機能しません.HTMLメッセージはOutlookではなくWordによってレンダリングされ、src = "data:image"イメージは認識されません。 –