473,395 Members | 1,856 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,395 software developers and data experts.

System.Web.Mail.MailMessage Headers.Add - Include vbCrLf

To anyone that can assist me: I deeply appreciate your help!!

I am developing an application with an outside vendor. The vendor has
a very odd requirement. They need custom X-Headers added to an email
received by their system. That's not the odd part. The oddity is
they want to have a single X-Header containing multiple keys and
values that are delimited by a carriage return, line feed and tab.

The vendor claims other customers have successfully met this
requirement using Lotus Notes.

Here's a snippet of code that attempts this requirement:
Dim objMail As New System.Web.Mail.MailMessage
objMail.To = strToAddress
objMail.From = strFromAddress
objMail.Subject = "test"
System.Web.Mail.SmtpMail.SmtpServer = "smtp_svr_1"
objMail.Headers.Add("X-Custom-Header", "key1: value1" & vbCrLf & vbTab
& "key2: value2")

When the email is received, this is where I fail the requirement. My
header looks like this:
X-Custom-Header: key1: value1 key2: value2

The vendor says that my header should look like this:
X-Custom-Header: key1: value1
key2: value2

In other words, they say the vbCrLf should wrap the text inside the
header to a new line and then tab once. Although I have attempted
numerous ways to insert the carriage return line feed, it always
renders on a single line in the header. I've also tried using
Environment.NewLine() with no success.

Is this even possible? My gut tells me no, but I'm hoping someone out
there will be able to say "yes it's possible" and show me how.

Thank you kindly for your time,
Travis

Oct 25 '07 #1
8 5176
On Oct 25, 5:28 pm, travispenning...@yahoo.com wrote:
To anyone that can assist me: I deeply appreciate your help!!

I am developing an application with an outside vendor. The vendor has
a very odd requirement. They need custom X-Headers added to an email
received by their system. That's not the odd part. The oddity is
they want to have a single X-Header containing multiple keys and
values that are delimited by a carriage return, line feed and tab.

The vendor claims other customers have successfully met this
requirement using Lotus Notes.

Here's a snippet of code that attempts this requirement:
Dim objMail As New System.Web.Mail.MailMessage
objMail.To = strToAddress
objMail.From = strFromAddress
objMail.Subject = "test"
System.Web.Mail.SmtpMail.SmtpServer = "smtp_svr_1"
objMail.Headers.Add("X-Custom-Header", "key1: value1" & vbCrLf & vbTab
& "key2: value2")

When the email is received, this is where I fail the requirement. My
header looks like this:
X-Custom-Header: key1: value1 key2: value2

The vendor says that my header should look like this:
X-Custom-Header: key1: value1
key2: value2

In other words, they say the vbCrLf should wrap the text inside the
header to a new line and then tab once. Although I have attempted
numerous ways to insert the carriage return line feed, it always
renders on a single line in the header. I've also tried using
Environment.NewLine() with no success.

Is this even possible? My gut tells me no, but I'm hoping someone out
there will be able to say "yes it's possible" and show me how.

Thank you kindly for your time,
Travis
try to add "\r\n" into line: "key1: value1\r\nkey2: value2"

Oct 25 '07 #2
Alexey,

Thanks for trying to help. Unfortunately, the \r\n ends up being part
of the same line and actually displays as part of a string. It looks
like:
"key1: value1\r\nkey2: value2"

Any other thoughts?

Oct 25 '07 #3
Just a wild guess..

Would this work?:

objMail.Headers.Add("X-Custom-Header", "key1: value1" & vbCrLf )
objMail.Headers.Add("", "vbTab & "key2: value2")

--
Bill Ross
http://bibleshockers.com
Bible Shockers! A collection of disturbing observations of and about the
Bible.
<tr**************@yahoo.comwrote in message
news:11*********************@o3g2000hsb.googlegrou ps.com...
To anyone that can assist me: I deeply appreciate your help!!

I am developing an application with an outside vendor. The vendor has
a very odd requirement. They need custom X-Headers added to an email
received by their system. That's not the odd part. The oddity is
they want to have a single X-Header containing multiple keys and
values that are delimited by a carriage return, line feed and tab.

The vendor claims other customers have successfully met this
requirement using Lotus Notes.

Here's a snippet of code that attempts this requirement:
Dim objMail As New System.Web.Mail.MailMessage
objMail.To = strToAddress
objMail.From = strFromAddress
objMail.Subject = "test"
System.Web.Mail.SmtpMail.SmtpServer = "smtp_svr_1"
objMail.Headers.Add("X-Custom-Header", "key1: value1" & vbCrLf & vbTab
& "key2: value2")

When the email is received, this is where I fail the requirement. My
header looks like this:
X-Custom-Header: key1: value1 key2: value2

The vendor says that my header should look like this:
X-Custom-Header: key1: value1
key2: value2

In other words, they say the vbCrLf should wrap the text inside the
header to a new line and then tab once. Although I have attempted
numerous ways to insert the carriage return line feed, it always
renders on a single line in the header. I've also tried using
Environment.NewLine() with no success.

Is this even possible? My gut tells me no, but I'm hoping someone out
there will be able to say "yes it's possible" and show me how.

Thank you kindly for your time,
Travis
Oct 25 '07 #4
Bill, thanks for the attempt. There's a problem with that approach
when I have more than 2 value key pairs. The header's key name has
to be unique. For example, I can't have 2 of these:
objMail.Headers.Add("", bla bla)
The header key has be unique and their application is looking for a
tab on the new line too.

Oct 25 '07 #5
On Oct 25, 8:29 pm, travispenning...@yahoo.com wrote:
Alexey,

Thanks for trying to help. Unfortunately, the \r\n ends up being part
of the same line and actually displays as part of a string. It looks
like:
"key1: value1\r\nkey2: value2"

Any other thoughts?
I read that this works with some clients like Eudora, but I see that
this is not the case with Outlook, or Gmail... How did you test it?
Have you ever saw the line breaks from a Lotus Notes message?

Oct 25 '07 #6
I have been sending my test messages to a SmarterTools web based email
account. I'm not viewing the header with a PC based email client.
The vendor sent me a message generated from their system (Lotus Notes)
to my same SmarterTools web email....and it's header had the line
breaks displaying the way they want it. They even sent me a snippet
of code demonstrating how they accomplish it in Lotus Notes, but it's
the same thing I'm doing....they're just inserting vbCrLf into a
header. Of course, the creation/attachment of the header is slightly
different for Lotus, but everything else is the same.

Oct 25 '07 #7
Bob
I am not sure if you can do it or not with System.Web.Mail but this is
deffintly a bug on the vendors side.

X-Custom-Header: key1: value1 key2: value2

is equivelent to

X-Custom-Header: key1: value1
key2: value2

The line break (a.ka. folding) is a layer of RFC822 which is a way to get
around line length limitations. They are misusing the RFC because their
parsing developer(s) are to lazy to write a better parser.

If you can't do it, and the vendor is not going to budge you may want to
give the below component a try. I belive the headers are added untouched.
http://www.freesmtp.net

They should have copied the Received header symantics and use a semi-colon
instead.

i.e.

X-Custom-Header: Key1:Value;Key2:Value2

or just the below line where key is implicit.

X-Custom-Header: Value1;Value2

<tr**************@yahoo.comwrote in message
news:11*********************@o3g2000hsb.googlegrou ps.com...
To anyone that can assist me: I deeply appreciate your help!!

I am developing an application with an outside vendor. The vendor has
a very odd requirement. They need custom X-Headers added to an email
received by their system. That's not the odd part. The oddity is
they want to have a single X-Header containing multiple keys and
values that are delimited by a carriage return, line feed and tab.

The vendor claims other customers have successfully met this
requirement using Lotus Notes.

Here's a snippet of code that attempts this requirement:
Dim objMail As New System.Web.Mail.MailMessage
objMail.To = strToAddress
objMail.From = strFromAddress
objMail.Subject = "test"
System.Web.Mail.SmtpMail.SmtpServer = "smtp_svr_1"
objMail.Headers.Add("X-Custom-Header", "key1: value1" & vbCrLf & vbTab
& "key2: value2")

When the email is received, this is where I fail the requirement. My
header looks like this:
X-Custom-Header: key1: value1 key2: value2

The vendor says that my header should look like this:
X-Custom-Header: key1: value1
key2: value2

In other words, they say the vbCrLf should wrap the text inside the
header to a new line and then tab once. Although I have attempted
numerous ways to insert the carriage return line feed, it always
renders on a single line in the header. I've also tried using
Environment.NewLine() with no success.

Is this even possible? My gut tells me no, but I'm hoping someone out
there will be able to say "yes it's possible" and show me how.

Thank you kindly for your time,
Travis

Oct 25 '07 #8
Bob, thanks for the referral on freesmtp.net. I'll check that out.
I agree about the RFC too. I haven't personally read the RFC myself,
but monkeying around with the formatting (appearance) didn't set well
with me either.

Oct 25 '07 #9

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

9
by: Peter Afonin | last post by:
Hello, I created an e-mail form pretty much as described in this article: http://www.4guysfromrolla.com/webtech/080801-1.shtml. It works great, but I cannot figure out one thing: I need to...
0
by: gh0st54 | last post by:
Hi i'm looking for how to change the date of out going messages i tried this but it doesn't seems to work static public bool SendEmail(string To, string From, string Subject, string Body,...
0
by: Dan___ | last post by:
How to send a mailmessage with a return receipt? I use the property Headers of the class MailMessage dim myMail as new MailMessage myMail.Headers.Add("Return-Receipt-To", <address@mail.com>)...
3
by: chuckdfoster | last post by:
When using this bit of code, it sends two emails most of the time. Sometimes it doesn't send two, but most of the time it does. I put the system time (Now) in the Subject and each email has a...
1
by: MickeBoy | last post by:
Hi all! I'm trying to send a HTML mail using the MailMessage class. Sending the message works fine, but there is something funny with the received message. I use the code below to generate and...
8
by: marcmc | last post by:
Trying to send an eMail frommy vb.net App. Is there anybody out there that has successfully done this? I am having major problems and need a step by step guide into the world of system.web and...
1
by: asnowfall | last post by:
I am creating MailMessage out of already existing email message. My existing message has few custom properties. I wan to add them to System.Net.Mail.MailMessage How to add custom properties? ...
0
by: Kevin Hodgson | last post by:
I'm having a problem with System.Web.Mail.MailMessage losing linefeeds when creating an email. This is a VB.NET project. I use a stringbuilder to construct the MailMessage.Body and use vbCrLf...
4
by: David C | last post by:
I would like to have an email go to 2 email addresses but when I try it by separating with semicolon or comma it fails. Can anyone help? below is my code (see ToAddress string). Thanks. David...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.