Use C # To obtain MSN contacts

Source: Internet
Author: User

Recently, I accepted a new challenging job, that is, getting the contact of MSN and implementing MSN operations.

 

 

Private xihsolutions. dotmsn. Messenger messenger = new messenger ();

Protected void page_load (Object sender, eventargs E)
{

// By default this example will emulate the official Microsoft Windows Messenger Client
Messenger. Credentials. clientid = "msmsgs@msnmsgr.com
";
Messenger. Credentials. clientcode = "q1p7w2e4j9r8u3s5 ";

// Uncomment this to enable verbose output for debugging
Settings. traceswitch. Level = system. Diagnostics. tracelevel. verbose;

// Set the events that we will handle
// Remember that the nameserver is the server that sends contact lists, notifies you of contact status changes, etc.
// A switchboard server handles the individual conversation sessions.
Messenger. nameserverprocessor. connectionestablished + = new eventhandler (nameserverprocessor_connectionestablished );
Messenger. nameserver. signedin + = new eventhandler (nameserver_signedin );
Messenger. nameserver. signedoff + = new signedoffeventhandler (nameserver_signedoff );

Messenger. nameserverprocessor. connectingexception + = new
Processorexceptioneventhandler (nameserverprocessor_connectingexception );
Messenger. nameserver. exceptionoccurred + = new handlerexceptioneventhandler (nameserver_exceptionoccurred );
Messenger. nameserver. authenticationerror + = new handlerexceptioneventhandler (nameserver_authenticationerror );
Messenger. nameserver. servererrorreceived + = new errorreceivedeventhandler (nameserver_servererrorreceived );
Messenger. conversationcreated + = new conversationcreatedeventhandler (messenger_conversationcreated );

Messenger. transferinvitationreceived + = new
Msnslpinvitationreceivedeventhandler (messenger_transferinvitationreceived );
}

/// <Summary>
/// Asks the user to accept or deny the incoming filetransfer invitation.
/// </Summary>
/// <Param name = "sender"> </param>
/// <Param name = "E"> </param>
Private void messenger_transferinvitationreceived (Object sender, msnslpinvitationeventargs E)
{
// If (MessageBox. Show (
// Messenger. contactlist [E. transferproperties. remotecontact]. Name +
// "Wants to send you a file./R/nfilename:" +
// E. filename + "/R/nlength (bytes):" + E. filesize,
// "Filetransfer invitation ",
// Messageboxbuttons. yesno, messageboxicon. Question) = dialogresult. Yes)
//{
/// By setting the accept property in the eventargs to true we give the transfer a green light
// Savefiledialog. filename = E. filename;

// If (dialogresult) invoke (New
Showfiledialogdelegate (showfiledialog), new object [] {savefiledialog
}) = Dialogresult. OK)
//{
// E. transfersession. datastream = new filestream (savefiledialog. filename, filemode. Create, fileaccess. Write );
// E. Accept = true;
//}
//}
}
Private void messenger_conversationcreated (Object sender, conversationcreatedeventargs E)
{
// Check if the request is initiated remote or by this object
// If it is initiated remote then we have to create a conversation form. Otherwise
// Form is already created and we don't need to create another one.
If (E. initiator = NULL)
{
// Use the invoke method to create the form in the main thread
// Control. Invoke (New createconversationdelegate (createconversationform), new object [] {e. Conversation });
}
}
/// <Summary>
/// Notifies the user of errors which are sent by the MSN server.
/// </Summary>
/// <Param name = "sender"> </param>
/// <Param name = "E"> </param>
Private void nameserver_servererrorreceived (Object sender, msnerroreventargs E)
{
// When the MSN server sends an error code we want to be notified.
// Response. Write (E. msnerror. tostring ());
Setstatus ("server error received ");
}

Private void nameserver_authenticationerror (Object sender, exceptioneventargs E)
{
// Response. Write ("authentication failed, check your account or password .");
Setstatus ("authentication failed ");
}
Private void nameserver_exceptionoccurred (Object sender, exceptioneventargs E)
{
// Ignore the unauthorized exception, since we're handling that error in another method.
If (E. Exception is unauthorizedexception)
Return;

// Response. Write (E. Exception. tostring ());
}

Private void nameserverprocessor_connectingexception (Object sender, exceptioneventargs E)
{
// String message = E. Exception. tostring ();
Setstatus ("Connecting failed ");
}

Private void nameserver_signedoff (Object sender, signedoffeventargs E)
{
Setstatus ("signed off from the messenger network ");
}
Private void nameserver_signedin (Object sender, eventargs E)
{
Setstatus ("signed into the messenger network as" + messenger. Owner. Name );

// Set our presence status
Messenger. Owner. Status = presencestatus. online;

Updatecontactlist ();
}
Private void nameserverprocessor_connectionestablished (Object sender, eventargs E)
{
Setstatus ("connected to server ");
}

Private delegate void updatecontactlistdelegate ();
/// <Summary>
/// Updates the listview.
/// </Summary>
Private void updatecontactlist ()
{
If (messenger. Connected = false)
Return;

// Listview1.items. Clear ();
Listbox1.items. Clear ();
// Messenger. contactlist. All. Current
If (messenger. contactlist. All! = NULL)
{
String costring = "";
Foreach (contact in messenger. contactlist. All)
{

Listitem item = new listitem ();
Item. Text = contact. Name;
// Item. value = contact. tostring ();
Listbox1.items. Add (item );
Costring = costring + contact. Name. Trim ();
}
Response. Write ("<SCRIPT> alert ('" + costring + "'); </SCRIPT> ");
Listbox1.databind ();

}
}
Protected void button#click (Object sender, eventargs E)
{
// Messenger. Credentials. clientid = "msmsgs@msnmsgr.com
";
// Messenger. Credentials. clientcode = "q1p7w2e4j9r8u3s5 ";
If (messenger. Connected)
{
Messenger. Disconnect ();
}
Messenger. Credentials. Account = txtuserid. Text. Trim ();
Messenger. Credentials. Password = txtpasswd. Text. Trim ();

// Messenger. connectivitysettings. proxyhost = "10.1.180.11 ";
// Messenger. connectivitysettings. proxyport = 8080;
// Messenger. connectivitysettings. proxytype = proxytype. SOCKS5;
// Messenger. connectivitysettings. proxyusername = User Name
// Messenger. connectivitysettings. proxypassword = Password
Try
{
Messenger. Connect ();
// Response. Write ("<SCRIPT> alert ('success'); </SCRIPT> ");
}
Catch (exception message)
{
// Response. Write (Message );
}

// Listbox1.appenddatabounditems ();

}
Private delegate void setstatusdelegate (string status );

Private void setstatussynchronized (string status)
{
// Response. Write (Status );
}

Private void setstatus (string status)
{
Setstatussynchronized (Status );
}

}

 

Dotmsn can be used to operate the MSN control. To be happy, you can use MSN to obtain contacts on campus.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.