Ben Nadel
On User Experience (UX) Design, JavaScript, ColdFusion, Node.js, Life, and Love.
I am the chief technical officer at InVision App, Inc - a prototyping and collaboration platform for designers, built by designers. I also rock out in JavaScript and ColdFusion 24x7.
Meanwhile on Twitter
Loading latest tweet...
Ben Nadel at NCDevCon 2011 (Raleigh, NC) with:

Hotmail Blocks Emails Send With Inline Images

By Ben Nadel on
Tags: ColdFusion

I am NOT stating this as a cold hard fact, but from my testing, it seems that Hotmail is blocking emails that have inline images created using the ColdFusion CFMailParam tag. I was trying to create a more formatted email for my blog comments and wanted to put in an inline Logo using:

  • <cfmailparam
  • file="http://www.bennadel.com/...../kiny_solutions_logo.gif"
  • contentid="kslogo"
  • disposition="inline"
  • />

and the image:

  • <img
  • src="cid:kslogo"
  • width="303"
  • height="75"
  • alt="Kinky Solutions by Ben Nadel"
  • border="0"
  • />

This works fine in Outlook and GMail, but the emails never came through when I sent to Hotmail. When I changed the image SRC attribute back to a fully qualified URL (ex. http://www.bennadel.com/..."), the emails starting coming in. The problem with that though, is that now, the images don't show up unless you click on them, which is, of course, very lame.

Hotmail is so worthless. I am gonna leave it in this way. I just don't care. If you are STILL using Hotmail, then what can I say - you get what you have coming to you (or rather you don't get what you have coming to you). Really, there is no reason to still be with Hotmail at all.

Tweet This Deep thoughts by @BenNadel - Hotmail Blocks Emails Send With Inline Images Thanks my man — you rock the party that rocks the body!


Reader Comments

Couldn't you just use something like this?

<cfif ListLast(Email,'@') EQ 'hotmail.com'>
src="{absolute}"
<cfelse>
src="cid:kslogo"
</cfif>

It'd still means clicking for Hotmail users, but at least they're not being excluded completely...

Peter,

Yes, I could definately do that. And it's probably a good idea now that I have cooled down and come back from the "bad place." I just get so steamed about how over bearing some security has gotten. I mean, we're talking free email accounts here. Why don't they just put it in the Spam folder?

And actually, I did finally get an email last night that was send from the site. It's very interesting. Nothing came through from the development server, but one email came through from the production server.

When I used PHP, Hotmail used to put stuff in spam unless I manually set certain headers... maybe the production server set them?

As for the notification e-mail itself, I like it. :)

Only minor complaint is that the "To Peter Boughton, " bit is redundant - I'm reading it so I know it's to me.
Although you could add a footer line saying "this message was sent to <name>(<email>) because you subscribed at <url>", for people that want to verify its not spam or whatever.

Peter,

Yeah, true the TO line is redundant. I will remove it. I think when I am building stuff I just get into a production mind-set where I want to output information.

Could you tell me a little bit more about these headers that you had to set? I don't know much about email headers.

I can't remember exactly what a quick Google found a clone of the PHP manual with some info in (http://terra.di.fct.unl.pt/docs/php/ref.mail.php.htm).

Maybe try the following:

<cfmail to="#whoever#" from="#from#" replyto="#from#" type="html" charset="iso-8859-1">
<cfmailparam name="X-Priority" value="3"/>
<cfmailparam name="X-MSMail-Priority" value="High"/>
<cfmailparam name="X-Mailer" value="Just My Server"/>

[message]

</cfmail>