`
mengdejun
  • 浏览: 399863 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

使用DotMSN 2.0开发MSN机器人

    博客分类:
  • .Net
阅读更多

在网络上查阅了很多关于通过DotMSN 开发包来开发MSN机器人 的小程序,为了验证其正确性,本人亲自测试,发现了这样一篇文章,他写的很好,没有问 题。下面就贴出源代码,和大家分享。请提前在项目引用中添加下载到的DotMSN.dll 文件,再using DotMSN ;

 

    using System;  
      
    using System.Collections.Generic;  
      
    using System.ComponentModel;  
      
    using System.Data;  
      
    using System.Drawing;  
      
    using System.Text;  
      
    using System.Windows.Forms;  
      
    using DotMSN;  
      
      
      
    namespace MSNBotTest  
      
    {  
      
        public partial class Form1 : Form  
      
        {  
      
            public Form1()  
      
            {  
      
                InitializeComponent();  
      
            }  
      
            DotMSN.Messenger msn = new DotMSN.Messenger();//初始化一个Messenger对象用来登陆服务器  
      
            private void button1_Click(object sender, EventArgs e)  
      
            {  
      
                try  
      
                {  
      
      
      
                    statusBar1.Text="正在连接到服务器...";  
      
                    msn.ConversationCreated += new Messenger.ConversationCreatedHandler(ConversationCreated);  
      
                    msn.Connect(textBox1.Text, textBox2.Text);//前一个为用户名,后一个为密码  
      
                    msn.SynchronizeList();初始化列表,用来显示在线用户  
      
                    statusBar1.Text="成功连接到服务器";  
      
                      
      
                }  
      
                catch (DotMSN.MSNException me)  
      
                {  
      
                    MessageBox.Show(me.ToString());  
      
                }  
      
      
      
            }  
      
            private void ReadMsg(Conversation sender, DotMSN.MessageEventArgs e)  
      
            {  
      
                //string content;  
      
                string input = e.Message.Text;  
      
                if (input.Equals("j"))  
      
                {  
      
                    string content = "你好,我是机器人小范";  
      
                    sender.SendMessage(content);  
      
                }  
      
      
      
                else if (input.StartsWith("H"))  
      
                {  
      
                    string content = "我很笨,很多功能还在开发哦";  
      
                    sender.SendMessage(content);  
      
                }  
      
                else  
      
                {  
      
                    string content = "你好啊,我不知道你说的是什么啊,有什么事情请输入H";  
      
                    sender.SendMessage(content);  
      
                }  
      
      
      
            }  
      
            private void ConversationCreated(Messenger sender, ConversationEventArgs e)  
      
            {  
      
                  
      
                e.Conversation.MessageReceived += new Conversation.MessageReceivedHandler(ReadMsg);  
      
            }  
      
      
      
            private void button2_Click(object sender, EventArgs e)  
      
            {  
      
                try  
      
                {  
      
                    ShowAll();  
      
                }  
      
                catch (Exception ex)  
      
                {  
      
                    MessageBox.Show(ex.ToString());  
      
                }  
      
            }  
      
            private void ShowAll()  
      
            {  
      
                try  
      
                {  
      
                    msn.SetStatus(MSNStatus.Online);  
      
                    AllListView.Clear();  
      
                    foreach (Contact contact in msn.GetListEnumerator(MSNList.ForwardList))  
      
                    {  
      
                        ListViewItem item = new ListViewItem(contact.Name);  
      
                        item.Tag = contact;  
      
                        if (contact.Status != MSNStatus.Offline)  
      
                        {  
      
                            AllListView.Items.Add((item + "在线").Remove(0, 14));  
      
                        }  
      
                        //                    if(contact.Status == MSNStatus.Busy)  
      
                        //                    {  
      
                        //                        AllListView.Items.Add(item+"忙碌");  
      
                        //                    }  
      
                        //                    if(contact.Status == MSNStatus.Away)  
      
                        //                    {  
      
                        //                        AllListView.Items.Add(item+"离开");  
      
                        //                    }  
      
                        else  
      
                        {  
      
                            AllListView.Items.Add((item + "离线").Remove(0, 14));  
      
                        }  
      
      
      
                    }  
      
      
      
                }  
      
                catch (Exception ex)  
      
                {  
      
                    MessageBox.Show(ex.ToString());  
      
                }  
      
            }  
      
      
      
            private void button3_Click(object sender, EventArgs e)//用来断开连接  
      
            {  
      
                msn.CloseConnection();  
      
            }  
      
        }  
      
    }  
 

转自:http://blog.csdn.net/longqi293/archive/2008/06/24/2580923.aspx

  • 大小: 14.9 KB
分享到:
评论

相关推荐

    使用DotMSN 20开发MSN机器人.doc

    使用DotMSN 20开发MSN机器人.doc

    如何使用DOTMSN开发简单的MSN机器人示例(附示例源码).doc

    如何使用DOTMSN开发简单的MSN机器人示例(附示例源码),自己开发MSN机器人的参考文档

    基于dotmsn的MSN机器人原代码

    vb.net下的MSN机器人原代码,接口用的是dotmsn。非常适合开发自己喜欢的MSN程序

    基于DotMSN示例做的一个MSN机器人

    基于DotMSN示例做的一个MSN机器人 能显示在线好友, 能收发信息。

    DotMsn C#开发自己的MSN客户端

    一个基于c#和msn开发包,里面有很详细的例子,可用来基于msn的开放协议,来开发自己的msn客户端和msn机器人,也可以开发基于游览器的msn客户端.

    mymsn.rar_MSN 机器人_msn机器人_机器人 问答 系统_监控系统_系统消息

    其中MSN信息发送部分,我在工余时间花了几个小时扩展了一下,做了一个MSN机器人,源代码是C#,含自动IP地址查询、简单自动问答等。 做这个没有什么目的,只是看看到底别人是怎样实现的,自己做了2个小时就实现了,...

    msn机器人源码 c#源码

    msn机器人源码,使用DotMSN.dll

    MSN机器人源代码(转)

    其中MSN信息发送部分,我在工余时间花了几个小时扩展了一下,做了一个MSN机器人,源代码是C#,含自动IP地址查询、简单自动问答等。  做这个没有什么目的,只是看看到底别人是怎样实现的,自己做了2个小时就实现了...

    dotmsn 开源msn第三方api

    开源msn第三方api,有实例运用可以获取msn好友列表, 可以群发消息 可以查看好友状态

    MSN协议开发源代码(C#)

    它面向.NET开发人员,能使开发人员开发各种基于 Windows Live Messenger服务的客户端程序,例如MSN机器人和开发自己的MSN客户端。 MSNPSharp支持MSN绝大部分的功能,包括:聊天,发送、接收离线消息,接收用户显示...

    MSN机器人源代码(C#)

    namespace DotMSN { using System; public class Connection { // Methods public Connection(string pHost, int pPort) { this.host = pHost; this.port = pPort; } // Properties public string ...

    MSN通讯类库

    它面向.NET开发人员,能使开发人员开发各种基于 Windows Live Messenger服务的客户端程序,例如MSN机器人和开发自己的MSN客户端。 MSNPSharp支持MSN绝大部分的功能,包括:聊天,发送、接收离线消息,接收用户显示...

    dotmsn

    msn客户端开发组件,简单好用

    DotMSN 2.0.2

    DotMSN 2.0.2官方示例DotMSN 2.0.2官方示例DotMSN 2.0.2官方示例DotMSN 2.0.2官方示例

    获取MSN好友类 DotMSN.dll

    还行DotMSN.dll DotMSN.dll DotMSN.dll

    MSNP-Sharp

    它面向.NET开发人员,能使开发人员开发各种基于 Windows Live Messenger服务的客户端程序,例如MSN机器人和开发自己的MSN客户端。 MSNPSharp支持MSN绝大部分的功能,包括:聊天,发送、接收离线消息,接收用户显示...

    dotmsn-2.0.2.rar_CSharp 即时通讯_dotmsn_instant messenger_messenger_

    DotMSN是一个开放源代码的独立类库提供即时通讯服务而无需MSN Messenger服务。

    MSNPSharp_314_release

    MSNP-Sharp是一个能与MSN Messenger(现Windows Live Messenger)服务连接并向客户端...它面向.NET开发人员,能使开发人员开发各种基于 Windows Live Messenger服务的客户端程序,例如MSN机器人和开发自己的MSN客户端。

    MSNPSharp_40_RC2.zip

    MSNP-Sharp是一个能与MSN Messenger(现Windows Live Messenger)服务连接并向客户端...它面向.NET开发人员,能使开发人员开发各种基于 Windows Live Messenger服务的客户端程序,例如MSN机器人和开发自己的MSN客户端。

Global site tag (gtag.js) - Google Analytics