|
SMTP is the Simple Message Transfer Protocol, the service used to transfer email. Hotmail does not support the SMTP services. You can only access Hotmail through http://www.hotmail.com[^] or - if you're an extra storage subscriber - the HTTPMail service which is similar in concept to Web Services (although it uses DAV, not SOAP). This can be used through Outlook and Outlook Express.
Microsoft MVP, Visual C#
My Articles
|
|
|
|
|
If you're just wanting to send mail, you need to find a SMTP server you can connect to. If you can't find one, you could always run one on your local machine and use "localhost" as the server. If you do this, make sure you're behind a firewall and you set up the server to only relay mail from the local machine (don't become a spam relay).
IIS has a SMTP server in it and it can be configured where you configure IIS.
There's one last issue you might run into. Big email providers (hotmail, AOL, etc.), might not allow email to originate from your machine depending on your internet connection. It might realize you're a DHCP assigned IP address on a cable modem and flat out not allow you to send email to a hotmail address (this is to cut down on people spamming without liability, people using your machine as a spam relay, and trojan's).
I, for one, do not think the problem was that the band was down. I think that the problem may have been that there was a Stonehenge monument on the stage that was in danger of being crushed by a dwarf.
-David St. Hubbins
|
|
|
|
|
I have a SettingsDialog class, which has a TabControl on it, with several TabPages.
I want to access a specific TabPage with the class constructor when I'm creating the dialog. So, for instance, when I'm inside a Form called Form1, I want to do the following
Form1.Button1_Click()<br />
{<br />
new SettingsDialog("TabPageNameContainingSettingsForForm1").ShowDialog();<br />
}
so that the settings dialog will start directly with the correct TabPage activated.
Sammy
"A good friend, is like a good book: the inside is better than the cover..."
|
|
|
|
|
The TabControl has both SelectedIndex and SelectedTab properties. After you initialize the control, iterate through the TabControl.TabPages collection property and find the TabPage with that name. Set this instance to TabControl.SelectedTab or grab the index and set SelectedIndex (which SelectedTab does internally anyway).
Microsoft MVP, Visual C#
My Articles
|
|
|
|
|
I am getting a null pointer error from the StrRetToStr method I call from COM. The method is called as follows:
<br />
result = COMStuff.StrRetToStr(ref mySTRRET, relativePIDL, out myFileName);<br />
Where mySTRRET is a valid STRRET retrieved from the GetDisplayNameOf method. RelativePIDL is a pointer to the PIDL of the object relative to the parent (Used BindToParent). and myFileName is a 128 charachter marshaled Bstr string.
All values are previously defined. SO i'm not sure why I am getting this error. Is the PIDL not supposed to be the relative one? I've used the origional PIDL, and still have no luck with this. Any help appreciated.
Regards
Cata
|
|
|
|
|
Please post additional code used around this call. Is the error message any more explicit?
- Nick Parker My Blog
|
|
|
|
|
Hi,
How can I generate EMails with HTML and send them using C# / .net.
Sorry but I have no idea about how that kind of e-mail works ( if there is an standard format to have the pics and content embedded or...).
Thanks in advance, Greetings
Braulio
|
|
|
|
|
This is done using MIME (Multipurpose Internet Mail Extensions). You should first understand how SMTP works and how basic email messages are formatted. It's similar in concept to HTTP, in that you provide headers, skip a line, and begin your content. MIME adds content types, including multipart which allows you to include text, html, images, and more. Image should, of course, be encoded as text (typically base64-encoded, but could be anything so long as clients support it).
For some information about MIME, you can google. There is a specific section on MSDN, MIME Extensions to Internet Mail[^] (kinda of redundant, but oh well) that also includes a sample of a MIME message. It also includes information on many common types used in MIME messages, but you can use anything so long as it can be interpreted by the email client (if it isn't, only the parts of the email that are understood are displayed).
Microsoft MVP, Visual C#
My Articles
|
|
|
|
|
Heath , why don't you advise him MailMessage Class?
Mazy
"Improvisation is the touchstone of wit." - Molière
|
|
|
|
|
Mazdak wrote:
Heath , why don't you advise him MailMessage Class?
While you can send standard HTML with the MailMessage class, the poster originally asked about embedding content including images which would require the use of MIME as Heath noted.
- Nick Parker My Blog
|
|
|
|
|
Because it doesn't allow you to send pictures as part of the HTML body, only to include a URL from an external resource. You can include attachments, but without using the right MIME header the HTML body won't resolve the attached image correctly.
Microsoft MVP, Visual C#
My Articles
|
|
|
|
|
Hi everybody,
I need the measures and the positions of any header from a TabPage. Does anybody know how to get these informations?
The reason is: I want to use the normal TabPages, which are used with the WindowsXP-Look. But I want to specify (override) the color of the little colored topline (standard XP is orange) for every TabPage by my own.
My idea was to write a custom control (TabControl) and react on the OnMouseMove event to draw my colored (blue) line over the orange line.
Or is that all over the wrong way?
Frank
|
|
|
|
|
How about TabControl.GetTabRect ? It's right there in the documentatino for TabControl in the .NET Framework SDK.
Note, though, that if you're overriding the painting of a TabPage , you can more effectively use the TabControl.DrawItem event (or override OnDrawItem in a derived class) when TabControl.DrawMode is set to TabDrawMode.OwnerDrawFixed .
Microsoft MVP, Visual C#
My Articles
|
|
|
|
|
SORRY...!!!!!!!!!!!!!!!!!!!!!!!
Thanks. That's what i was looking for.....
I've probably worked too long...!!!!!
Frank
|
|
|
|
|
Hi,
I develop system management tool.
This have 2 functions.
1. get cpu usage rate from localPC and remotePC.
2. get system cash memory from localPC and remotePC.
These functon are realtime functions.
If you have some ideas, please tell me.
best regards,
yu-yu,
|
|
|
|
|
|
Mr Stewart
Thank you for your advice.
I will try it.
regards,
yu-yu
|
|
|
|
|
We've got a multi-threaded server (we are very early in the project, trying to uncover some risks), and we want to send data using XML.
The class ServerAdapter is supposed to connect to the server (which works fine), to send data, but on the same stream be able to read data (which is causing problems).
In the function "bool Connect()", we want to instantiate the XmlTextReader with the stream that we got from the 'TcpClient client', but somehow that goes wrong. No exception is cast, but the problem definately has something to do with the stream that we get from the call 'client.GetStream()'.
When we try to do the exact same thing, with a stream NOT from a TcpClient, there is no problem. We've checked to see if it had something to do with the access-property on the connection (the 'Socket') on the serverside, but it came up negative. I am pretty much out of ideas, so if you can help me out, it'd be great (first time here, so I dont know the standarts)
We've checked how far it gets with text-outputs, so we KNOW that the XmlTextReader causes the problem.
Here is the part of code that fails.
public class ServerAdapter : IServerAdapter
{
private IServerEventHandler serverEventHandler;
private TcpClient client;
private NetworkStream stream;
private Thread readThread;
private XmlTextReader streamReader;
private XmlTextWriter streamWriter;
private BinaryReader reader;
private XmlValidatingReader validatingReader;
private XmlSchemaCollection schemaCollection;
public ServerAdapter()
{
}
public ServerAdapter( IServerEventHandler serverEventHandler ):base()
{
this.serverEventHandler = serverEventHandler;
}
public bool Connect()
{
bool connected = false;
try
{
client = new TcpClient();
client.Connect( "10.0.55.12", 4312 );
stream = client.GetStream();
streamReader = new XmlTextReader( stream );
streamWriter = new XmlTextWriter( stream, new System.Text.UTF8Encoding() );
blablabla....
Thanks in advance
...Borgbjerg
|
|
|
|
|
You're opening a reader and writer on the same stream without closing either one first. Because the stream can only send or receive data at one time, you need to close the reader before using the writer, and vice versa.
Also, have you looked into .NET Remoting? This seems like a fairly good scenario to implement remoting and you can still use a TcpChannel (either in a configuration file or programmatically) to send and receive data over TCP. The nice thing is that you can work with instances of objects rather than just data back and forth, making this a good OO design in terms of communication.
Microsoft MVP, Visual C#
My Articles
|
|
|
|
|
We figured it out... It is no problem to read/write the same stream at the same time.
The problem is that the call to XmlTextReader's constructor was blocking the whole thread. So what we did, was more or less to start a new thread for the Reader, so it could block all it wanted. However, the weird thing is that we didn't call reader.Read(), and that it was still blocking. But thanks for the help
And have fun
|
|
|
|
|
I can't really see how that'd work with a NetworkStream , but I guess it works for you. Good.
One thing I would recommend, though, is that you use the encoding of the stream you get from the server (from XmlTextReader.Encoding ) so as not to mix encodings, unless you already know that the stream will be UTF-8 encoded.
Microsoft MVP, Visual C#
My Articles
|
|
|
|
|
I need to know how can we grant permission to access the Msysobjects through C# coding.
Any kind of suggestion is highly appreciated!
|
|
|
|
|
|
I'm trying to add an image into an Access database.
I have added an image as a binary Byte array which you can deserialize into an image again when extracting this from the database.
I'm however looking into adding an image directly to the database, which in my mind should be possible to do programatically, since you can add a picture directly into the database as an OLEobject.
I'm stuck on this problem, and I really hope that someone has an idea about this.
Thanks.
Bengt
|
|
|
|
|
You have to read a FileStream into byte[] then you can set this value into your DataSet in the image field. This is the way:
System.IO.FileStream stream = new System.IO.FileStreammybmp.bmp", System.IO.FileMode.Open, System.IO.FileAccess.Read);
byte[] buffer = new byte[stream.Length];
stream.Read(buffer, 0, (int)stream.Length);
stream.Close();
dataSet11.Tables["Employees"].Rows[index]["Photo"] = buffer;
Mazy
"Improvisation is the touchstone of wit." - Molière
|
|
|
|
|